tangly2017 发表于 2017-11-3 20:34:20

ATTINY24A如何设置PWM频率??

输出的 PWM 频率可以通过如下公式计算得到:f OCnxPWM=f clk_I/O除以N× 256
变量 N 代表分频因子 (1、 8、 64、 256 或 1024)。
如何计算才能得到10KHZ的PWM频率。

qiqirachel 发表于 2017-11-4 03:41:35

本帖最后由 qiqirachel 于 2017-11-4 03:43 编辑

闲着荒下了个手册看了下
系统时钟16mhz
fastpwm模式下
fout = fclk/n(1+top)
要得到10kpwm
分频率8 top值199就好了
16位定时器,分频越小越好,得到的pwm占空比可以挑的比较精细

你放进去用万用表测一下频率呗,我都这么干的,活着买个逻辑分析仪

tangly2017 发表于 2017-11-4 09:20:47

TOP值的设置是在OCRnA的寄存器里面设置吗?

chengyang79 发表于 2017-12-5 21:46:35

比较笨的方法是用2.56M的晶振,或者分频后能得到合适频率的晶振。当然最通常还是使用频率修正模式,通过设置ICP中的TOP值,或者频率相位修正模式下,修改OCRA中的TOP的值

t3486784401 发表于 2017-12-8 19:31:40



看手册吧,如图选择这种 TOP=OCRx/ICRx 的快速 PWM 模式。
代价是牺牲了一定程度的 PWM 精度,例如本来可以是 256 点的,位数 ln256/ln2=8 (bit);
结果牺牲到了 200 点,等价位数 ln200/ln2= 7.6(bit)
页: [1]
查看完整版本: ATTINY24A如何设置PWM频率??