如何用avr16单片机的OC0输出1.5ms脉宽20ms周期的PWM波?

2024年11月28日 05:50
有1个网友回答
网友(1):

你是要驱动舵机是吧?舵机的周期20ms的波的话对准度要求还是挺高的,用8位定时器0不太好,用16位定时器可以解决这个问题。。。如果必须用8位定时器0,快速PWM模式,系统时钟用6M或者8M,6,000,000怎么分频也分不出周期为20ms的波。这就需要软件处理,那就不分频,设置一个计数器“i” ,发生一次溢出中断i++。。。6,000,000/256=23437hz我们需要50hz,那就当i加到433的时候将io口拉高,if(i==468)时将io口拉低,这样也可以。