Watchdog dauer Reset

Gast #284996
Lesenswert?
• ▲
▼
Nachdem ich nun meine Anwendung auf dem AVR fertig entwickelt habe und
alles prima läuft, wollte ich zusätzlich aus Sichertsgründen den
Watchdog aktivieren, aber sieh da wenn er aktiv ist macht er alle 2
Sekunden ein Reset. Was ist da los ? Oder hab ich den falsch
initialisiert? Ist der Watchdog nicht aktiv gibts auch keinen Reset und
die Software läuft aber trotzdem.

Hier mal ein Code Schnipsel:

// Set Wadog prescaler to 2.2sec.
WDTCR |= (1<<WDP2) | (1<<WDP1) | (1<<WDP0);

// Enable Wadog
WDTCR |= (1<<WDE) | (1<<WDTOE);
Gast #284997
Lesenswert?
• ▲
▼
Hi,

du musst den Watchdog spätestens alle 2,2sec resetieren.
Das ist der Sinn und zweck vom Watchdog. Wird dieser nämlich nicht
resetiert, ist das ein Zeichen für den AVR dass das Programm irgendwo
hängen geblieben ist, und es wird der AVR in den sicheren
Anfangszustand (nach Reset) gebracht

lg,

Michael
Gast #284999
Lesenswert?
• ▲
▼
Hi,

jein.

In Assembler gibts den Befehl WDR, welcher dir den WD resettiert.

Du musst schauen, dass in deinem Programmablauf der WD sicher vor
Ablauf von den 2,2 sec resettiert wird. Wennst du einen Timer sowieso
im Programm verwendest, kannst du hier den WDR-Befehl sinnvollerweise
einfügen.

Lg,

Michael
#285001
Lesenswert?
• ▲
▼
Watchdog reset sollte in die Hauptschleife, nicht in einen Interrupt.
Wenn die Hauptschleife hängt, wird der Interrupt trotzdem ausgeführt
und der Watchdog springt nicht an.

Du brauchst den Watchdog nicht selbst bitweise setzen, dazu gibt es:

wdt_enable() und wdt_reset(), siehe avr-libc Doku.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.