Titelbild Mikrocontroller

6.5. WDTCR – Watchdog Timer Control Register

WDTCR Register

WDTCR Register


Bit 7 bis 5 – Res: Reservierte Bits

Diese Bits sind reserviert und werden immer als 0 gelesen.

Bit 4 – WDCE: Watchdog Change Enable

Dieses Bit muss gesetzt sein, wenn das WDE-Bit gelöscht werden soll. Andernfalls wird der Watchdog nicht gesperrt. Wenn das WDCE-Bit gesetzt wurde, wird es durch die Hardware nach vier Taktzyklen wieder gelöscht, es bleibt also nur ein kurzes Zeitfenster, um den Watchdog durch Löschen des WDE-Bits zu sperren. In den Sicheheitsleveln 1 und 2 muss dieses Bit auch gesetzt werden, wenn die Bits für den Vorteiler geändert werden sollen.

Bit 3 – WDE: Watchdog Enable

Wenn dieses Bit gesetzt ist, ist der Watchdog freigegeben, ist es gelöscht, dann ist die Watchdog-Funktion abgeschaltet. Das Bit kann nur gelöscht werden, wenn das WDCE-Bit gesetzt ist. Um den freigegeben Watchdog Timer zu sperren, muss folgender Ablauf eingehalten werden:

1. In einer Operation muss gleichzeitig eine 1 in die Bits WDCE und WDE geschrieben werden. Die 1 muss selbst dann in das WDE-Bit geschrieben werden, wenn es kurz vorher mit einer 1 beschrieben wurde.

2. Innerhalb der nächsten vier Taktzyklen muss nun eine 0 in das WDE-Bit geschrieben werden. Dann ist der Watchdog gesperrt.

Bit 2, 1, 0 – WDP2. WDP1, WDP0: Watchdog Timer Prescaler, Bits 2, 1 und 0

Diese Bits definieren den Vorteiler des Watchdog Timers, wenn dieser freigegeben ist. Die Einstellmöglichkeiten und die dazugehörigen Time-out Zeiten sind in nachfolgender Tabelle dargestellt.
Watchdog Vorteiler des ATmega8

Watchdog Vorteiler des ATmega8


Das nachfolgende Beispiel zeigt das Abschalten des Watchdog Timers. Dabei ist unterstellt, dass während diese Sequenz keine Interrupts auftreten.
Codebeispiel Watchdog ausschalten

Codebeispiel Watchdog ausschalten

Impressum