Hello,
Can you point me to the documentation that details what the sources of a soft reset are ?
Thx,
Aidan
Hello,
Can you point me to the documentation that details what the sources of a soft reset are ?
Thx,
Aidan
You may want to elaborate a bit on "soft reset".
Otherwise: NVIC_SystemReset() function.
Hello,
I am looking for a hardware description as to the possible sources of a SREQ bit being set in the RESETREAS register.
We are seeing random resets in our application, and the SREQ bit is set when the reset vector is jumped to. Is it set when a null pointer is taken for example.
Thx,
Aidan
As Turbo J said, the SREQ bit is set after reset triggered by the application calling NVIC_SystemReset() function. This typically happens in the error handler, triggered by an error code passed to APP_ERROR_CHECK, an assert, or a hardfault.
If you define the DEBUG flag in your preprocessor symbols, the error handler will print the cause of the error on the log, before entering an endless loop instead of triggering a soft reset. You can get similar output from the HardFault handling library if you include this in your project.
Errata 136?
Also, some of the default fault/error handlers in the SDK contain a call to NVIC_SystemReset().