AVR单片机怎么用I/O口模拟PWM输出

要控制多路舵机,ATMEGA16怎么模拟PWM信号

使用需要配合使用一个定时器,定时时间到,将响应的IO翻转。PWM周期是定时器周期的两倍,这样得到的pwm是50%占空比,如果要调占空比,再设置一个标志位,配合标志位设置IO口输出高和输出低时各自的一处周期。追问

能不能给个程序让我看下

追答

void mcu_init(void)
{
....
timer0时钟选择;
timer0选择定时方式;
timer0计数寄存器设置;
timer0开启;
timer0中断允许
....

}

void timer0_isr(void)
{
timer0计数值重装;
pin1=!pin1;

}

参考资料:pin

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-04-18
avr自带pwm功能,为何不用,要用模拟的呢?
相似回答