使用Arduino定时器
我使用这个Arduino代码生成一个5V、200kHz的脉冲,脉冲宽度为50%使用Arduino定时器,arduino,atmega,pwm,Arduino,Atmega,Pwm,我使用这个Arduino代码生成一个5V、200kHz的脉冲,脉冲宽度为50% void setup(){ //将安装代码放在此处,以便运行一次: pinMode(pwmpin,输出); pinMode(FBo,输入); pinMode(FBi,输入); noInterrupts();//禁用所有中断 TCCR0A=0; TCCR0B=0; TCNT0=0; OCR0A=40;//比较匹配寄存器占空比*16MHz/200kHz OCR0B=40;//比较匹配寄存器1-占空比*16MHz/200k
void setup(){
//将安装代码放在此处,以便运行一次:
pinMode(pwmpin,输出);
pinMode(FBo,输入);
pinMode(FBi,输入);
noInterrupts();//禁用所有中断
TCCR0A=0;
TCCR0B=0;
TCNT0=0;
OCR0A=40;//比较匹配寄存器占空比*16MHz/200kHz
OCR0B=40;//比较匹配寄存器1-占空比*16MHz/200kHz
TIMSK0 |=(1问题是您在正常模式下而不是在CTC模式下操作计时器/计数器0
尝试添加
TCCR0A |= (1 << WGM01);
TCCR0A |=(1感谢您的帮助。