| 上一篇 | 下一篇 |
|---|---|
| 通用定时器 2/3/4/5 的时钟源寄存器设置,以及中断实验 |
3.4)通用定时器的寄存器简要说明
定时器相关的寄存器太多了,本来想着都搞懂的,但是还是投降了,主要记住功能就行了,配置什么的主要用 HAL 库函数。
| 寄存器 | 全称 | 主要功能 |
|---|---|---|
| CR1 | Control Register 1 | 控制定时器基本运行:使能/禁用、计数方向(向上/向下)、时钟分频、单脉冲模式、自动重载使能等。 |
| CR2 | Control Register 2 | 配置主模式输出(TRGO 信号源),用于触发其他外设(如 ADC、其他定时器)。 |
| SMCR | Slave Mode Control Register | 配置从模式:选择 TRGI 触发源、从模式类型(复位/门控/触发/外部时钟)、ETR 极性/滤波等。 |
| DIER | DMA/Interrupt Enable Register | 使能各类中断(更新、捕获、比较等)和 DMA 请求。 |
| SR | Status Register | 标志位状态寄存器,记录当前发生的事件(如更新中断标志 UIF、捕获/比较标志 CCxIF 等)。写 0 可清除标志。 |
| EGR | Event Generation Register | 软件触发事件(如手动产生更新事件、捕获/比较事件),用于初始化或调试。 |
| CCMR1 | Capture/Compare Mode Register 1 | 配置通道 1 和 2 的工作模式(输入捕获 or 输出比较)、PWM 模式、预装载使能、输出极性(间接)等。 |
| CCMR2 | Capture/Compare Mode Register 2 | 配置通道 3 和 4 的工作模式(同上)。 |
| CCER | Capture/Compare Enable Register | 使能各通道的捕获或输出,并设置输出极性 (高有效/低有效)和输入边沿选择(上升/下降沿捕获)。 |
| CNT | Counter Register | 存储当前计数值(只读或可写,取决于模式) |
| ARR | Auto-Reload Register | 设置计数器最大值(周期),计数到 ARR 后溢出并重载 |
| PSC | Prescaler Register | 对定时器时钟进行分频(实际分频系数 = PSC + 1) |
| CCR1~CCR4 | Capture/Compare Register 1~4 | 存储通道 1~4 的比较值(用于 PWM 或输出比较)或捕获值(输入捕获时读取)。 |
| DCR | DMA Control Register | 配置 DMA 突发传输的地址偏移和数据长度(用于 DMA 批量读写定时器寄存器)。 |
| ······ | ······ | ······ |