STM32定时器的预装载值和预分频系数如何确立

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STM32定时器的预装载值和预分频系数如何确立相关的知识,希望对你有一定的参考价值。

STM32定时器的预装载值和预分频系数如何确立

根据定时器时钟的频率,比如时钟的频率是72MHZ,可以理解为一秒钟STM32会自己数72M次,预分频系数就是将频率分割,比如分频系数是72,则该时钟的频率会变成72MHZ/72=1MHZ,但是在设置的时候要注意,数值应该是72-1。假定分频系数是72-1,那么频率变成1MHZ,也就意味着STM32在一秒钟会数1M次,即1us数一次。好了,接下来就是确定预装载值,比如需要定时1ms,由于1ms=1us*1000,那么预装载值就是1000-1;如此类推,在预分频系数确定的情况下,定时的时长就由预装载值确定了。至于要把值减一的原因,估计是计数是从0开始,所以要减一。个人的学习经验,望采纳。 参考技术A

注意一下计数器时钟频率CK_CNT是Fck_psc除以(你设定值+1)

参考技术B 预装载是个功能,和输出频率占空比都没关系。
预分频数是时钟源送到定时器前的分频数,当你的最大计数周期不能满足计时要求时调这个。
参考技术C 1us = 1mhz

1ms = 1khz
1s = 1hz
芯片大小(一般84m或者72m)除以预分频数,得到一个对应时间,这个对应时间乘以重装载值得到的就是定时时间。反推亦可。个人理解,不当请指正。

以上是关于STM32定时器的预装载值和预分频系数如何确立的主要内容,如果未能解决你的问题,请参考以下文章

1.8ms计时,分频值是多少

Stm32高级定时器

stm32定时器tim6tim7,对定时时间的设置与哪些寄存器有关

STM32定时器的预装载寄存器与影子寄存器之间的关系

STM32通用定时器实现LED灯闪烁

stm32 定时器中预分频系数是啥作用? 72MHz 想要让定时器 100次/s 该怎么写配置代码?