首先,我们需要计算定时器的时钟周期(T),即:

T = 1 / 72 MHz = 13.8889 ns

然后,根据分频比(PSC)计算出定时器的预分频系数(N),即:

N = PSC + 1 = 7199 + 1 = 7200

接着,我们需要确定定时器的计数周期(C)。由于我们需要得到1秒钟的定时,因此:

C = 1 s / T = 1,000,000,000 ns / 13.8889 ns = 72,000,000

最后,我们可以根据计数周期(C)和预分频系数(N)来计算定时器的自动重载寄存器(ARR)的值。由于ARR是一个16位的寄存器,因此:

  • 如果C / N <= 65535,那么ARR = C / N - 1
  • 如果C / N > 65535,那么ARR = 65535

在本例中,C / N = 10,000,因此:

ARR = C / N - 1 = 10,000 - 1 = 9999

因此,定时计数器(ARR)的值需要设定为9999,才能实现1秒钟的定时。

例如普通定时器模块的时钟为72 MHz分频比PSC为7199那么我们想要得到一个1秒钟的定时定时计数器ARR的值需要设定为TIMX_ARR=详细过程解释

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

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