STM32 定时器时钟分割设置:TIM_ClockDivision 参数详解

TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; // 设置时钟分割: TDTS = Tck_tim

这段代码中的 TIM_ClockDivision 参数操作了 TIMx_CR1 寄存器的 CKD 位。该参数用于设置定时器时钟的分割比例,影响定时器计数器的时钟频率。

TIM_ClockDivision 参数解释:

  • TIM_CKD_DIV1: 定时器时钟不分频,TDTS = Tck_tim
  • TIM_CKD_DIV2: 定时器时钟分频为 2,TDTS = 2 * Tck_tim
  • TIM_CKD_DIV4: 定时器时钟分频为 4,TDTS = 4 * Tck_tim

TDTS 指的是定时器计数器的时钟周期,Tck_tim 指的是定时器时钟的周期。通过设置不同的 TIM_ClockDivision 参数,可以改变定时器计数器的时钟频率,从而影响定时器计数的精度和速度。

示例:

假设定时器时钟频率为 72MHz,如果设置 TIM_ClockDivision = TIM_CKD_DIV2,则定时器计数器的时钟频率将变为 36MHz。

应用场景:

  • 提高定时器精度: 当需要更高精度的定时器计数时,可以设置 TIM_ClockDivision 参数进行分频,从而获得更小的计数周期。
  • 降低定时器频率: 当需要降低定时器计数频率时,可以设置 TIM_ClockDivision 参数进行分频,从而降低定时器计数的速率。

注意:

  • TIM_ClockDivision 参数只影响定时器计数器的时钟频率,不会影响其他与定时器相关的时钟频率。
  • 在使用 TIM_ClockDivision 参数时,需要根据实际情况选择合适的时钟分割比例。
STM32定时器时钟分割设置:TIM_ClockDivision 参数详解

原文地址: https://www.cveoy.top/t/topic/bwX8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录