请feng_matrix帮忙【恢复】
您的电调程序#ifdef _16KHZ
#define PWM_C_ON {TCCR1A = 0xA2; TCCR2 = 0x41; DDRB = 0x0A;}
#define PWM_B_ON {TCCR1A = 0xA2; TCCR2 = 0x41; DDRB = 0x0C;}
#define PWM_A_ON {TCCR1A = 0xA2; TCCR2 = 0x61; DDRB = 0x08;}
#define PWM_OFF {TCCR1A = 0x02; TCCR2 = 0x41;PORTC &= ~0x0E;}
#endif
#define STEUER_A_H {PWM_A_ON}
#define STEUER_B_H {PWM_B_ON}
#define STEUER_C_H {PWM_C_ON}
当只执行 STEUER_A_H ;时,应该只有A相输出pwm信号,但是用示波器测量发现其他两相也有输出pwm,什么原因呢? 可以先断开三个BC817,然后再测试M8三路PWM输出是否正确 断开也是那样
#define PWM_C_ON {TCCR1A = 0xA2; TCCR2 = 0x41; DDRB = 0x0A;} // DDRB为什么不写成DDRB=0x02?? TCCR1A不写为TCC1A=0x08
#define PWM_B_ON {TCCR1A = 0xA2; TCCR2 = 0x41; DDRB = 0x0C;} // DDRB为什么不写成DDRB=0x04?? TCCR1A不写为TCC1A=0x02
#define PWM_A_ON {TCCR1A = 0xA2; TCCR2 = 0x61; DDRB = 0x08;}
#define PWM_OFF {TCCR1A = 0x02; TCCR2 = 0x41;PORTC &= ~0x0E;}
页:
[1]