Hallo
Ich hab das RN Mega2560 Modul. Ich möchte, dass ein Interrupt ausgelöst wird, wenn der Timer an der oberen Grenze angekommen ist. (16Bit Timer = 65536)
Allerdings wird die ISR nicht ausgeführt. Hab auch schon im Forum gesucht aber ich finde meinen Fehler einfach nicht.
Hier ist mal der Code:
Code:#include <avr/io.h> #include <avr/interrupt.h> volatile uint8_t zaehler=0; void start_timer(void) { TCCR5B |= (1<<CS02) | (1<<CS00); //Prescaler für Timer0 auf 1024 TCNT5 = 0; TIMSK5 |= (1<<TOIE5); //Timer Overflow Interrupt Enable zaehler=0; sei(); } ISR(TIMER5_OVF_vect) { if(zaehler<10) zaehler++; else { zaehler=0; lcd_clrscr(); lcd_puts("Timer"); PORTC ^= (1<<7); } }







Zitieren

Lesezeichen