STM32 定时器设置 - 如何实现100ms定时 (72MHz 时钟)
首先要确定定时器的时钟频率,它等于 PSC 时钟频率除以 PSC 的值,即:
定时器时钟频率 = PSC 时钟频率 / PSC
在本题中,定时器时钟频率应该是 72MHz / 72 = 1MHz。
接下来,我们可以计算 ARR 的值,它等于定时器时钟频率乘以定时时间,即:
ARR = 定时器时钟频率 × 定时时间
= 1MHz × 100ms
= 100000
最后,我们需要确定 PSC 的值,使得 ARR 的值在定时器 16 位寄存器的范围内。定时器 16 位寄存器的最大值为 65535,因此 PSC 的值应该是:
PSC = (ARR + 1) / 65536
= (100000 + 1) / 65536
= 1.526
由于 PSC 取整后必须大于等于 1,因此我们可以将 PSC 设置为 2,此时 ARR 应该为:
ARR = 定时器时钟频率 × 定时时间 / (PSC + 1)
= 1MHz × 100ms / 3
= 33333
因此,定时器的 ARR 应该设置为 33333,PSC 应该设置为 2。
原文地址: https://www.cveoy.top/t/topic/mjsl 著作权归作者所有。请勿转载和采集!