یک برنامه pwm نیاز دارم که بدون استفاده از وقفه ها بتوانم تعداد معین پالس تولید کنم
اگر کسی میدونه لطفا راهنماییم کنه
برد هم Atxmega128َََA3U می باشد.
با تشکر
اگر کسی میدونه لطفا راهنماییم کنه
برد هم Atxmega128َََA3U می باشد.
با تشکر
ISR(TCC0_OVF_vect) { static unsigned char x200=200; static unsigned int x275=275; PORTC_OUTTGL=PIN0_bm; if((PORTC & PIN0_bm)==0) { if(--x275)return; x275=275; // Do 275 pulses routine if(--x200)return; x200=200; // Do 275*200 pulses routine } }
ISR(TCC0_OVF_vect) { static unsigned char x200=200; static unsigned int x275=275; PORTC_OUTTGL=PIN0_bm; if((PORTC & PIN0_bm)==0) { if(--x275)return; x275=275; // Do 275 pulses routine if(--x200)return; x200=200; // Do 275*200 pulses routine } }
EVSYS_CH0MUX=EVSYS_CHMUX_TCC0_OVF_gc; TCC1_PER=199; TCC1_CTRLA=TC_CLKSEL_EVCH0_gc;
EVSYS_CH0MUX=EVSYS_CHMUX_TCC0_OVF_gc; TCC1_PER=199; TCC1_CTRLA=TC_CLKSEL_EVCH0_gc;
دیدگاه