www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Reset mit Watchdog != Power-Up?


Autor: Ich Bin (ichbin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich löse einen Software-Reset per Watchdog so aus:

cli();
wdt_enable (WDTO_15MS);
while (1);

Mein Programm verhält sich aber nicht so, wie es das nach einem
externen Reset (AVRISP, An/Aus) macht. Es startet zwar neu, aber
irgendwelche Variablen oder Interrupts sind wohl durcheinander, so daß
nicht das gewünschte Verhalten auftritt.

Woran könnte das liegen?

Dank!

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Willst du jetzt, dass der Controller "nackich" ist, oder willst du
deine Werte behalten?
Im Datenblatt gibt es eine schöne Tabelle, in der beschrieben ist, was
sich alles in welchem Zustand nach ein Reset jeglicher Art (Watchdog,
Brownout...) drin steht.

Autor: Ich Bin (ichbin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja, nackich wie nach spannnung aus und wieder einschalten
bzw. so, wie es durch einen externen reset vom AVRISP ist (allerdings
ist da wohl alles ungewollte gelöscht worden)
.. habe im forum schon gelesen, daß der ram seine daten nicht
verliert.
werde mal ins datenblatt sehen.

Autor: Ich Bin (ichbin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
seh ich das richtig, daß ich den watchdog direkt nach dem neustart
wieder ausschalten muß?

Autor: Ich Bin (ichbin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, aber auch das "MCU Status Register" löschen. Da steht drin, wie
der Reset ausgelöst wurde (wenn man's wissen will, also vorher
auslesen) und anscheinend startet das dann auch den Watchdog wieder
(nur watchdog ausschalten reicht nicht).
Das hier gilt zumindest für ein tiny2313.

MCUSR = 0;
wdt_disable();

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.