Hallo, ich sitz grad auf der Leitung, der 16bit-Timer beim Atmega will einfach nicht: TIMSK1 |= (1<<OCIE1A); OCR1AH=0; OCR1AL=0; TCCR1A=0; TCCR1B |= (1<<CS10); TCNT1H=0; TCNT1L=0; [...] ISR(SIG_OUTPUT_COMPARE1A) { PORTD|=(1<<PD4); //Led } Naja, die Led leuchtet nicht... Wo könnte der Fehler liegen? Danke mfg AT16
Nein, das passt alles, beim Timer 0 funktionierts... Danke
Hier die main: int main(void) { DDRD=0xFF; TIMSK0 |= (1<<OCIE0A); OCR0A=0; TCCR0B |= (1<<CS00); TCNT0=0; TIMSK1 |= (1<<OCIE1A); OCR1AH=0; OCR1AL=0; TCCR1A=0; TCCR1B |= (1<<CS10); TCNT1H=0; TCNT1L=0; cli(); sei(); while(1){}; } ISR(SIG_OUTPUT_COMPARE1A) { //led } ISR(SIG_OUTPUT_COMPARE0A) { //led }
Hi
Wozu ein Compare-Interrupt, wenn das zusändige Register 0 ist.
>Nein, das passt alles, beim Timer 0 funktionierts...
Halte ich für ein Gerücht.
MfG Spess
spess53 schrieb: > Hi > > Wozu ein Compare-Interrupt, wenn das zusändige Register 0 ist. Der Compare Match müsste aber trotzdem ausgelöst werden.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.