How to Reset STM32 MCU Programatically?
While the STM32 controller is reset at the power cycle, sometimes it is needed to reset the controller programmatically. This is needed in the process of severe system failure, misconfiguration of internal hardware, or during the firmware update process. So, how can we reset the STM32 Microcontroller programmatically?
The answer to the question on How to Reset the STM32 Microcontroller is the following. The correct function for this is NVIC_SystemReset(). Call this function from any place of code and it will never return, but reset the controller. The alternate function is HAL_NVIC_SystemReset(), just an alias for the above.