Tim0OVF -> Warum funktioniert er nicht?

Gast #602040
Lesenswert?

Hallo,

irgendwie bin ich gerad nicht in der lage, einen Timeroverflow in C zu 
generieren und echt überfragt, woran es liegt. Hier in kurzform mein 
"Programm". Hab ich was vergessen, hab ich was verwechselt? Irgendwie 
komm ich gerad nicht weiter...
1
int main (void)
2
{
3

4
  led_init();
5
  led_all_off();
6
  
7
  TIMSK0= (1<<TOIE0); //overflow Int aktivieren
8
  TCCR0B= (5<<CS00); // Prescaler 1024
9
  while (1) ; 
10
}
11

12
ISR(TIMER0_OVF_vect)
13
{
14
  toggle_led();
15
}

Die LED Funktionen funktionieren, der timer läuft, aber die ISR wird nie 
ausgeführt.
Es handelt sich um den ATMEGA1281.

Kann mir jemand weiterhelfen?
Vielen Dank!


P.S.:
ein auszug aus der iomxx0_1.h
1
/* Timer/Counter0 Overflow */
2
#define TIMER0_OVF_vect      _VECTOR(23)
3
#define SIG_OVERFLOW0      _VECTOR(23)
Im Datenblatt findet sich jedoch TIMER0 OVF als Vektor no 24 
beschriftet. wem darf ich denn nun trauen?
leider wurde mein overflow auch nicht bei
1
#define SPI_STC_vect      _VECTOR(24)
auselöst...
Gast #602050
Lesenswert?

ich mach feierabend.
vielleicht hätt man da auch gerade eben noch drauf kommen können. Alles 
mögliche überprüft, an zig stellen den fehler gesucht und ich bin mir 
einfach nur noch doof vorgekommen.... Ob ich mich jetzt schlauer fühl, 
sei mal dahingestellt...

Vielen Dank!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren