Forum: Mikrocontroller und Digitale Elektronik AT90S8535 und Watchdog in C


von Axel Schindler (Gast)


Lesenswert?

Hallo!

Möchte bei oben genanntem AVR den Watchdog benutzen. Habe die Passage im 
Datenblatt gelesen. Finde die Beschreibung aber etwas mager. Googeln hat 
mich bisher auch nicht viel weiter gebracht.

Kennt jemand eine gute Beschreibung im Web zum Watchdog und 
C-Programmierung?

Danke
Axel

von crazy horse (Gast)


Lesenswert?

und wo ist jetzt dein Problem?
Der Watchdog wird einmal gestartet und dann regelmäßig zurückgesetzt.
Das Starten ist einfach:
WDTCR=0b00001xxx //xxx je nach gewünschter Auslösezeit

Das Rücksetzen macht man am besten mit inline-Assembler:
asm ("wdr")

Diese Anweisung muß so platziert werden, daß das Programm bei 
ordnungsgemäßen Verlauf regelmäßig innerhalb der watchdog-Zeit  dort 
vorbeikommt. Keinesfalls darf wdr in einer timer-ISR auftauchen, die 
Interupts funktionieren oft noch, auch wenn der Rest total abgeschmiert 
ist.
Ich persönlich benutze eigentlich fast immer einen externen watchdog, 
neben einem ordentlichen reset kann man die watchdog-Triggerung an 2 
verschiedenen Programmteilen vornehmen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.