El MCU STM32F4 tiene una función de restablecimiento de caída de tensión. De acuerdo con el manual , sección 5.2.2, cuando la tensión de alimentación El VDD cae por debajo del umbral VBOR seleccionado, se genera un reinicio del dispositivo. Después del restablecimiento, puedo verificar el indicador BORRSTF en el registro RCC_CSR (consulte la sección 6.3.21 del manual) para ver si el restablecimiento se debió a un apagón.
Me gustaría simular este comportamiento en el STM32F100, que carece de una función de restablecimiento de la caída de tensión. Mi idea es utilizar el detector de voltaje programable (sección 4.2.2 en el manual ) para generar una interrupción en la línea EXTI 16. Cuando se llame al controlador de interrupciones, generaré un reinicio del software; Después de restablecer, puedo verificar que el motivo fue un restablecimiento del software mediante el indicador SFTRSTF en el registro RCC_CSR (consulte la sección 6.3.10 del manual). Dado que no genero un reinicio de software en ninguna otra parte de mi código, puedo estar seguro de que se debió a un apagón.
Esto es lo que estoy buscando saber:
- ¿Alguien puede ver un defecto en esta idea?
- ¿Un apagón real borraría la bandera de SFTRSTF en cuestión?