eigentlich müsste es ja mit cli(); und sei(); funktionieren. "eigentlich" weil ich das grade nicht testen kann.
geht sicher geschickter, aber wie wäre das hier:
der zähler bleibt bei 0x14 stehen, und beginnt erst wieder von 0 aufwärts zu zählen, wenn PINA=1 ist.Code:ISR (TIMER1_COMPB_vect) { if(PINA==1&&A==0x14) { A=0; } if(A<0x14) { if(A==0x00) { PORTB=0x05; // könnte man dort einfügen, wo A auf 0 gesetzt wird } if(A==0x01) { PORTB=0x00; } if(A==0x0A) { PORTB=0x0A; } if(A==0x0B) { PORTB=0x00; } A=A++; OCR1B=TCNT1+Delai; } }







Zitieren

Lesezeichen