Hay varias causas posibles para que un microcontrolador se reinicie a sí mismo , por ejemplo:
-
apagón o apagado
-
temporizador de vigilancia
-
reinicio iniciado desde el software (para ingresar mediante programación al cargador de arranque, etc.)
Me pregunto si hay una manera de averiguar, cuando se inicia un microcontrolador, cuál fue el motivo del último reinicio, tal vez utilizando algún tipo de indicadores que sobrevivan al reinicio. En particular, estoy en la serie MSP430F5xxx.
El caso de uso es evitar un ciclo en el que alguna parte de la rutina de autoprueba (por ejemplo) cause un fallo en el riel de alimentación, y luego el micro se reinicia y ejecuta la autoprueba nuevamente, repita (hasta que tenga éxito) ).