Embedded Systems und Firmware
Warum ist es ungünstig, das Zurücksetzen (Kicken) des Watchdog-Timers bedingungslos im 1-ms-Timer-Interrupt-Handler auszuführen?
- AWeil der Watchdog laut Festlegung nicht aus einem Interrupt heraus angesprochen werden darf
- BWeil Interrupts weiterlaufen, auch wenn die Hauptverarbeitung z. B. in einer Endlosschleife hängt, und der Watchdog die Störung nicht mehr erkennen kann
- CWeil der Watchdog bei einem Kick pro 1 ms kaputtgeht
Antwort und Erläuterung anzeigen
Antwort: B. Weil Interrupts weiterlaufen, auch wenn die Hauptverarbeitung z. B. in einer Endlosschleife hängt, und der Watchdog die Störung nicht mehr erkennen kann
Ein Watchdog setzt den Mikrocontroller zurück, wenn er nicht innerhalb einer festgelegten Zeit gekickt wird, und holt ihn so aus einem Absturz heraus. Timer-Interrupts laufen jedoch auch bei stehender Hauptverarbeitung weiter; wird dort bedingungslos gekickt, bleibt das Hängen unbemerkt. Grundsätzlich wird erst gekickt, wenn sich bestätigt hat, dass die Hauptschleife und alle Tasks jeweils normal einen Durchlauf abgeschlossen haben.