www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR Interruptregister wird überschrieben


Autor: Markus Krepper (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
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 von 56 auf 60 umgeschrieben. Ebenso das
Timermaskregister 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

Autor: AxelR. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
<Zitat>
wird das
Timercontrolregister von 56 auf 60 umgeschrieben. Ebenso das
Timermaskregister von 5 auf 0
</Zitat>

was bedeutet das im konkreten Fall für deinen Controller, wenn das
timercontrolregister von beagtem Wert 56 auf 60 springt? Binär heisst
das ja erstmal,dass BIT2 gesetzt wird(4). Jetzt sieh Dir mal die
Position des TCCR1A (oder B, haste nich gesagt, welches) im Register
Summary an. Vielleicht passt zu einem binären Offset ein Register,
welches Du tatsächlich verwendest?
Oder TTCR0 wird verändert, und Du machst Dir Gedanken, obwohl Du
Timer0.. <edit>ah verwendest Du auch, sonst wär ja im TIMSK
kein"5"drinn</edit> Timer1 verwendest?

Oder - noch besser - deine Spannungsversorgung ist nicht sauber.

Hast Du's mal S(t)imuliert im AVR-S(t)udio?

Habe Dir nicht wirklich helfen können, schade...
Wollte trotzdem was schreiben ;-)
Gruß
Axel

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.