定时器是STM32单片机非常常见的外设,使用定时器来设置定时时间需要配置预分频系数(Prescaler)和自动重装载值(Counter Period)。
假设设置一个500ms的定时器,时钟频率72MHz,把预分频系数设置为7200(即写入预分频寄存器的值为7200-1),72MHz/7200=10KHz,这样
就得到计数器的计数频率为10KHz,即计数器1秒钟可以计10000个数,如果要设置500ms定时器,计数器计数5000个数就能满足要求,即把自动重
装载值设置为5000-1。因此,设置一个500ms的定时器,预分频寄存器的值为7200-1,自动重装载寄存器的值为5000-1。
假设设置一个100ms的定时器,时钟频率200MHz,把预分频系数设置为 2000(即写入预分频寄存器的值为2000-1),200MHz/2000=100KHz,这
样就得到计数器的计数频率为100KHz,即计数器1秒钟可以计100000个数,如果要设置100ms定时器,计数器计数10000个数就能满足要求,即把自动
重装载值设置为10000-1。因此,设置一个100ms的定时器,预分频寄存器的值为2000-1,自动重装载寄存器的值为10000-1。
标签:分频,定时器,10000,STM32,单片机,计数器,设置,寄存器
From: https://blog.csdn.net/m0_62688905/article/details/144717994