当前位置: 首页 > news >正文

【STM32】定时器的外部时钟模式

⏱️ STM32 定时器 — 外部时钟模式详解

STM32 的定时器除了使用内部时钟(来自 APB1/APB2 总线)进行计数,还可以使用外部信号源作为时钟输入,实现更丰富的控制功能。本文基于图示,解析常见的外部时钟模式及其输入路径。


🔀 外部时钟模式概览

STM32 定时器支持以下几种外部时钟输入模式:

模式名称描述
外部时钟模式 1外部信号通过 TIx 通道输入,作为触发源驱动定时器
外部时钟模式 2外部信号通过 ETR(外部触发输入)输入,直接作为定时器的时钟源

🔧 图示结构分解

我们从图中识别出主要的组成模块和信号路径,按模块进行讲解:
在这里插入图片描述


🟡 内部时钟:APB1/APB2

  • STM32 内部的 APB 总线输出时钟作为默认的计数器时钟;
  • 若不启用外部时钟,计数器就以此进行计数。

🔵 外部触发输入(ETR)

ETR(External Trigger)是定时器的专用外部输入端口,路径如下:

ETR → 极性选择 → 边沿检测 → 预分频 → 输入滤波 → 触发器

📌 可通过设置决定 ETR 的输入极性(上升/下降沿)、是否进行滤波和预分频等操作。

✅ 外部时钟模式 2(External Clock Mode 2)
  • 最终将 ETR 作为定时器的 实际时钟源
  • 时钟直接输入给 从模式控制器,影响计数器;
  • 可用于 频率测量同步外部硬件时钟 等场景。

🔵 输入通道 TI1 / TI2

定时器可将普通通道输入也作为外部时钟源,路径如下:

TI1 → 输入滤波器 → TI1FP1 → 边沿检测器(生成 TI1_ED)
TI2 → 输入滤波器 → TI2FP2

📌 经滤波后,形成 TIxFPx 信号,再作为触发源输入到触发控制器。

✅ 外部时钟模式 1(External Clock Mode 1)
  • 选择 TIx(如 TI1)作为触发源,连接到触发控制器(TRGI)
  • 设置定时器为从模式(Slave Mode = External Clock Mode);
  • 此时每当 TIx 产生有效边沿,定时器就计数一次。

🔗 触发控制器(Trigger Control)

  • 多路输入选择器(MUX),决定使用哪个信号作为 触发源(TRGI)
  • 包括 ETR、TI1FP1、TI2FP2、TI1_ED 等;
  • 根据配置模式决定最终进入从模式控制器的触发源。

🧠 从模式控制器(Slave Mode Controller)

用于设置定时器的响应方式,有如下几种模式:

模式含义
Disabled不响应触发
Reset收到触发源信号后,CNT 被清零
GatedTRGI 有效时 CNT 开始计数,失效则停止
TriggerTRGI 信号触发一次计数周期
External ClockTRGI 被当作时钟源(即外部时钟模式 1)

🔄 与 CNT 计数器的关系

触发控制器和从模式控制器共同决定 计数器的计数时机与频率

  • 若触发信号为外部输入(TI1/ETR),则计数器受控于外部脉冲;
  • 配合自动重装载寄存器(ARR)和中断机制,可实现外部驱动的复杂控制。

🧰 应用场景举例

✅ 外部频率测量

  • 外部信号输入 TI1;
  • 设置为外部时钟模式 1;
  • 定时器开始计数,读取 CNT 即得脉冲数。

✅ 外部脉冲控制 PWM 输出

  • 外部脉冲输入通过 ETR;
  • 配置为外部时钟模式 2;
  • 每个外部脉冲触发一次定时器 PWM 更新。

✅ 总结

STM32 的外部时钟模式灵活强大,配合触发控制器与从模式控制器,可实现:

  • 精准的外部信号控制
  • 外部频率/事件测量
  • 多定时器同步操作
  • 外设输入与定时器联动

掌握 ETx、TIx、TRGI 的传递逻辑是理解定时器高级应用的关键。


相关文章:

  • 如何提升自我情绪管理的能力?
  • 沥青路面裂缝的目标检测与图像分类任务
  • [更新完毕]2025五一杯C题五一杯数学建模思路代码文章教学:社交媒体平台用户分析问题
  • 【Linux】基础指令(2)
  • 红鸟3D互动系统棋类源码一键部署教程(含多个打包版本与功能解构)
  • PowerBI实现点击空白处隐藏弹窗(详细教程)
  • NVIDIA NPP 库入门
  • MySQL初阶:数据库基础,数据库和表操作,数据库中的数据类型
  • STM32MP157开发板设置静态IP地址
  • Windows配置grpc
  • mescroll.js 是在 H5端 运行的下拉刷新和上拉加载插件
  • Vue 3 ref() 深度解析:从响应式原理到实战技巧
  • 设计模式简述(十六)门面模式
  • 第 8 篇:B/B+ 树:为海量磁盘数据而生
  • 《操作系统真象还原》调试总结篇
  • B站Michale_ee——ESP32_IDF SDK——FreeRTOS_8 消息缓冲区
  • javascript交换值最好三种
  • 计算机网络——客户端/服务端,URI与URL的区别,以及TCP/IP核心机制全解析
  • (36)VTK C++开发示例 ---纹理贴图四边形
  • 【大模型实战篇】对Qwen3提到的thinking和no thinking混合思考模式的讨论
  • “五一”前两日湖北20多家景区实施限流
  • 5月1日,多位省级党委书记调研旅游市场、假期安全等情况
  • “80后”蒋美华任辽宁阜新市副市长
  • 新华保险一季度净赚58.82亿增19%,保费收入增28%
  • 西班牙遭遇史上最严重停电,已进入国家紧急状态
  • 秦洪看盘|浮现新预期,存量资金积极调仓