cancel
Showing results for 
Search instead for 
Did you mean: 

Resetting STM32L4

Scott Dev
Senior

Hi

What is the best way of resetting the STM32L4 processor using registers?

Thanks

Scott

2 REPLIES 2

Just call NVIC_SystemReset(), it is in the library

/**

 \brief  System Reset

 \details Initiates a system reset request to reset the MCU.

 */

__STATIC_INLINE void NVIC_SystemReset(void)

{

 __DSB();                                                         /* Ensure all outstanding memory accesses included

                                                                      buffered write are completed before reset */

 SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos)   |

                          (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) |

                           SCB_AIRCR_SYSRESETREQ_Msk   );        /* Keep priority group unchanged */

 __DSB();                                                         /* Ensure completion of memory access */

 for(;;)                                                          /* wait until reset */

 {

   __NOP();

 }

}

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Scott Dev
Senior

Thanks Clive