单片机用定时器怎么调节占空比?

如题所述

两种方法利用两个定时器分别控制不同电平的时间,但占用了51的几乎全部定时器,并且计算起来比较麻烦,要计算两个定时器的值,占空比的计算也相对困难。
另一个方法是利用一个定时来模拟生成其频率和占空比都是可调的PWM,主要为: 例如模拟生成频率1KHZ和占空比是50%的PWM,首先将它分成的100份(也可以是更高的精度),控制这单独的每一份,来组成整个周期的PWM,1KHZ的T是1MS,分成100份,每一份的时间是0.01ms (10us),采用t0的16位工作方式,10us的数值C是10(12M晶振),初始值TH0=(65536-(C=10))/256,TL0=(65536-(C=10))%256,在此时,我们设置一个变量i,来表示份数.50%占空比,让前面的50份为高,即是i<=50,后50份为低。50<i<=100,.当I>100时,为0. 上面的就完成的频率1KHZ和占空比是50%的PWM,我们可以总结为定时器的C确定PWM的周期,q为占空比。

你调试一下看看 也就是两个周期
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答