Hallo,
schau mal ob die Interruptroutine (nur) ein mal aufgerufen wird. Das war bei mir nämlich eben erst der Fall. Habs inzwischen behoben, aber warum das jetzt funktioniert weiß ich leider noch nicht.
Mit meiner Lösung würde das so aussehen:
Code:
ISR(TIMER1_OVF_vect)
{
cli(); //Global Interrupt Flag löschen
TCNT1 = 65535 - (SYSCLK / 1024); //Zurücksetzen des Timers
Add_one_Second (); //1 Sekunde addieren
sei(); //Global Interupt Flag wieder setzten
}
Vielleicht funktionierts
lg MoFe
ps: Bitte [ code] Source Code [ /code] verwenden, mach das ganze übersichtlicher.
Lesezeichen