Wachhund
Wie andere bereits erwähnt haben, kann der Watchdog-Timer "ungerade" Fehler abfangen, die dazu führen, dass das Programm in einen ungeraden Zustand übergeht. Der Mikrocontroller wird zurückgesetzt und alles verhält sich so, als wäre er gerade wieder eingeschaltet worden. Für viele Anwendungen ist dies die beste Lösung. Ein Verbraucher wäre verärgert, wenn sich seine TV-Fernbedienung beim Versuch, sie zu verwenden, selbst zurücksetzen würde, aber ein Watchdog-Timer würde ein seltsames Ereignis erfassen und zurücksetzen. Ich kann Ihnen versichern, dass der Verbraucher mit einem zufälligen Zurücksetzen viel glücklicher wäre, als die Batterien entfernen und wieder einlegen zu müssen, bevor er sich erholt.
Es gibt auch Situationen, in denen Sie das Gerät möglicherweise nicht zurücksetzen können, z. B. in einem versiegelten Behälter oder an einem Ort, an den Sie einfach nicht gelangen können. In diesen Situationen wäre es viel besser, einfach zurückzusetzen, anstatt in einen Container einbrechen zu müssen oder was nicht.
Sicherheitskritisch
Es hört sich so an, als ob Sie nach etwas suchen, das eher sicherheitskritisch ist und bei dem ein Hardwarefehler nicht dazu führen soll, dass etwas schief geht.
Es gibt Prozessoren, die speziell dafür entwickelt wurden. Im Allgemeinen können Sie nur darauf hingewiesen werden, dass ein Fehler aufgetreten ist. Diese Warnung kann dann verwendet werden, um Ihre Systeme auf sichere Weise herunterzufahren.
Ich habe eine Demo eines Chips gesehen, der dies tat. Ich glaube, es war ein TI ARM, vielleicht der TMS570 . Eine Schutzmethode besteht jedoch darin, zwei parallele Verarbeitungskerne zu haben, die um einen halben Taktzyklus versetzt sind. Die Ergebnisse jeder Operation können dann zwischen den beiden Kernen verglichen werden. Durch den Versatz ist es weniger wahrscheinlich, dass ein externes Ereignis dazu führt, dass beide Kerne genau denselben Fehler machen.
Wenn sich der Vergleich als wahr herausstellt, leben Sie normal weiter. Wenn er falsch ist, hängt das, was Sie tun, von Ihrer Anwendung ab. Zumindest in dieser Situation werden Sie auf einen Fehler aufmerksam gemacht und haben die volle technische Kontrolle darüber, wie Sie ihn beheben möchten.