定时器时基单元的基础知识

时基单元

STM32 定时器的时基单元是定时器的核心模块,用于 ​生成精确的时间间隔​ 或 ​控制事件频率。其功能包括:

  • 计时:测量时间间隔或产生固定周期的中断。
  • PWM 生成:通过输出比较通道产生脉宽调制信号。
  • 输入捕获:测量外部信号的频率或占空比。

时基单元由时钟来源、开关、PSC预分频器、CNT计数器、ARR自动重装寄存器、RCR重复计数器。其中他们的作用如下

模块作用
预分频器(PSC)​将定时器时钟(CKTim)分频,得到计数器时钟
自动重载寄存器(ARR)​设定计数器自动重置的值(计数值达到 ARR 后触发溢出事件)。
计数器寄(CNT)​当前计数值(从 0 开始递增,直到等于 ARR 后重置)。
重复计数器(RCR)主要用于​控制定时器操作的重复次数

预分频器(PSC)

      PSC的作用

        降低时钟频率,定时器的输入时钟(CKTim)通常较高(如 72MHz),直接使用会导致计数器溢出过快。​预分频器将输入时钟分频,得到更低的计数器时钟,从而延长计数周期。​灵活调整定时精度,通过修改 PSC 值,可以在 ​大范围​ 内调整定时器的分辨率。

       如何分频

  • 分频公式

    • CKTim​: 定时器输入时钟频率(由 RCC 配置决定)。
    • PSC: 预分频器值(取值范围 0 ~ 65535)。
  • 举例

    • 若系统时钟为 72MHz,设置 PSC = 719,则计数器时钟为:

计数器(CNT) 

CNT 计数器的作用

  • 实时计数,按照预设的时钟频率递增或递减,记录时间或事件的数量。

  • 触发溢出事件,当计数器达到 ARR 的值(向上计数模式)或 0(向下计数模式)时,触发溢出中断(Update Interrupt)。

  • 支持多种模式,可配置为向上计数(Count Up)、向下计数(Count Down)或中心对齐(Center-Aligned)模式。

模式工作流程
向上计数CNT 从 0 开始递增,直到达到 ARR 后重置为 0,触发溢出事件。
向下计数CNT 从 ARR 开始递减,直到达到 0 后重置为 ARR,触发溢出事件。
中心对齐CNT 先递增到 ARR,再递减到 1(奇数)或 0(偶数),触发两次溢出事件后重置。

自动重装寄存器(ARR)

ARR 的作用

  • 定义计数器上限,计数器(CNT)从 0 开始递增,当达到 ARR 的值后触发溢出事件,并自动重置为 0,开始新一轮计数。

  • 生成固定周期的中断,每次计数器溢出时触发中断(如 TIMx_IRQHandler()),可用于实时任务调度或事件检测。

  • PWM 信号的基础,在 PWM 模式中,ARR 决定信号的周期,输出比较寄存器(OCx)决定占空比。

工作原理

计数器模式与 ARR 的关系

计数器模式ARR 的行为
向上计数计数器从 0 增加到 ARR,触发溢出后重置为 0
向下计数计数器从 ARR 减少到 0,触发溢出后重置为 ARR
中心对齐计数器从 0 增加到 ARR,再减少到 1,触发两次溢出后重置为 0(取决于奇偶性)。

2. 溢出事件的处理

  • 中断触发:溢出事件会触发 TIMx_IRQHandler(),需在中断服务程序中处理(如更新状态、触发动作)。
  • DMA 请求:可配置为通过 DMA 传输数据,避免中断延迟。

重复寄存器(RCR)

RCR 的功能

  • 周期性重复触发事件,当定时器完成一个完整的周期(由 ARR 寄存器设置的自动重载值决定)后,会根据 RCR 的值重复执行操作(如中断、PWM 输出等),直到达到指定的重复次数。

  • 扩展定时器的操作模式,在单次定时器周期内,支持多轮计数。

RCR 的工作原理

配置流程

  • 步骤 1:设置定时器的基本参数(预分频器、计数模式、时钟源等)。
  • 步骤 2:通过 RCR 寄存器设定重复次数。
  • 步骤 3:启动定时器,开始计数。

操作流程

  • 第一轮:计数器从 0 开始递增,达到 ARR 后触发事件(如中断),并重置为 0
  • 后续轮次:每触发一次事件后,重复次数减 1,直到 RCR 清零。
  • 结束条件:当 RCR 清零后,定时器停止重复操作,进入“空闲”状态。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值