【发布时间】:2015-04-02 15:40:05
【问题描述】:
我试图在同一个定时器上执行 2 个操作:PWM 和上升沿中断。我可以使两者单独工作,但似乎无法使它们一起工作。我正在使用 Arduino 板上的 atmega2560 芯片并尝试在 Timer1 上执行此操作,这是执行 PWM 的代码:
TCCR1A = 0;
TCCR1B = 0;
TCCR1A |= (1<<WGM11)|(1<<COM1A1)|(1<<COM1B1);
TCCR1B |= (1<<WGM12)|(1<<WGM13)|(1<<CS10);
ICR1 = 29999;
OCR1A = 0;
OCR1B = 0;
ICR1设置频率为533Hz左右,OCR1A为占空比;我在我的软件的其余部分改变了它,因为它是用来控制直流电机的。我接下来要做的是在 533Hz 的每个上升沿上,触发和中断。我曾尝试使用 TIMSK1,但似乎无法使其工作。有人知道如何编程吗?谢谢
【问题讨论】: