PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Interruptregister des AVR wird von selbst umgeschreiben



Markus Krepper
26.10.2004, 20:22
Zur Erzeugung eines Sekundenimpulses verwende ich die Interruptroutine des Timer1. Grundsätzlich funktioniert der von mir erstellte Code problemlos. Nur aus noch nicht erklärten Umständen wird das Timercontrolregister TIFR von 56 auf 60 umgeschrieben. Ebenso das Timermaskregister TIMSK von 5 auf 0 (Freigabe Int von T1 und T0). Somit wird natürlich auch kein Interrupt mehr ausgeführt. Das komische an dem Verhalten ist, dass dieses Problem in beliebigen Zeitabständen auftritt von einigen Minuten bis zu mehreren Stunden. Es kann auch nicht am Prozessor leigen, da ich das selbe Verhalten mit einen ATMEGA16 und AT90S8515 bereits gehabt habe.

Hat von euch jemand bereits so ein Problem gehabt?

Danke im Voraus

Markus

Florian
26.10.2004, 21:18
Wie wäre es, wenn Du uns den Code zusendest, zumindest in Abschnitten, die wichtig sind?

Markus Krepper
30.10.2004, 20:20
Anbei sende ich euch nun den Code. Meine Vermutung liegt bei der Verwendung von den I2C - Routine. Die I2C-Routinen und der Timerinterrupt vertragen sich vielleicht nicht.

Vielleicht fällt euch etwas ein.

Danke

Markus