这应该是一个简单的公式,但我无法弄明白。
我有一个16mHZ的AVR芯片。
我需要将PWM信号运行为24kHZ ..
决定什么是最好的预分频器的公式是什么。
我使用的是16位计时器。
答案 0 :(得分:5)
阅读数据表(此处例如来自ATmega328P数据表,16位定时器/计数器1)以获得公式:
输出的PWM频率可通过以下公式计算
fPWM = fclk_IO / (N * (1 + TOP))
N
变量表示预分频器分频器(1,8,64,256或1024)。
答案 1 :(得分:2)
16MHz / 24KHz给你......
(16 * 1024 * 1024)/(24 * 1024)给你......
16777216/24576给你......
682.667
因为您的预分频器只能是一个整数,并且根据您需要的精确度,您可以选择在每三个滴答中更改软件中的预分频器值。例如,前两个刻度将具有683的预分频器,每三个刻度为682。