Forum: Projekte & Code ATmega8 Watchdog (Assembler) richtig aktivieren


von Bernhard (Gast)


Angehängte Dateien:

Lesenswert?

....Whatchdog lässt sich nicht nicht konfigurieren
(z.B.) auf maximale Zeit?....

Hier gibt es eine kleine Besonderheit (s. Datenblatt),
wird aber gerne mal überlesen.

Mit meinem Beispielprogramm kann die Funktion getestet werden.

Viel Spaß

Gruß

Bernhard

PS: Thorsten, danke für Deinen Tipp

von Simon Küppers (Gast)


Lesenswert?

Wo isn da der Sinn:

      ;Watchdog aktivieren (max. Zeit)
         ldi r16,0b00011000  ; 1.mal (wichtig)
         out wdtcr,r16
         ldi r16,0b00001111  ; 2.mal (wichtig)
         out wdtcr,r16

?!?!

am ende steht in wdtcr 0b00001111....

Ich geh kaputt...

von Bernhard (Gast)


Lesenswert?

...wie darf ich das verstehen? Stimmt damit etwas nicht?

Erklär's mir bitte?

von Hagen (Gast)


Lesenswert?

Simon, wie wäre es denn deiner Meinung nach richtig ? Kritisieren ist ja
schön und gut aber die Kritik einfach unverbessert im Raum stehen lassen
?

Gruß Hagen

von mkmk (Gast)


Lesenswert?

@Bernhard
Danke für den Tip. Seit Jahren (!!) glaubte ich den Watchdog Timer
gesetzt zu haben. Nur weil bis anhin meine Programme nie hingen, habe
ich nicht gemerkt, dass ich mit den default-Wertden den Watchdog
enabled habe.

Nochmals herzlichen Dank.

von dave (Gast)


Lesenswert?

@Simon
 Der Sinn bei genau den 2 Zeilen ist, dass es einen Schutzmechanismus
gibt, und zwar: Bit4+3 (5+4) setzen und in den nächsten 4 Takten Bit3
wieder setzen.
4 = TurnOff Enable
3 ? Enable

Aber warum das beim einschalten wichtig ist, möchte ich auch wissen,
ich dachte nämlich, dass das nur die "Turn-Off-Procedure" war.

dave

von Stift (Gast)


Lesenswert?

Nur beim abschalten des wd ist es nötig, beim einschalten nicht!

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.