How to reset MB9BF114R from peripheral?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
LeslieW
Level 1
Level 1
5 sign-ins First reply posted First question asked

Hi, I want to software reset MCU from peripheral. Which peripheral can do?  How to assign it?

0 Likes
1 Solution

> Note:  the core_cm3.h (CMSIS lib) should be added in your project. Otherwise you may directly write SYSRESETREQ bit in Cortex M3 reset control register.

Since the NVIC is part of the ARM IP and basically identical in all Cortex M3, it would be sufficent to use any CMSIS lib package, and copy the NVIC_SystemReset() function into your code.
Perhaps with some modifications to remove dependencies on other include files.
It is usually implemented in core_cm3.h (for Cortex M3) as inline function.

View solution in original post

0 Likes
2 Replies
ChaoHaiM_11
Employee
Employee
25 replies posted 10 sign-ins 5 sign-ins

Hello,

The reset factors as following:

PONR: Power-on reset

INITX: INITX pin input reset
LVDH: Low-voltage detection reset
TRSTX: TRSTX pin input reset
HRESET: AHB bus reset (a bus reset issued by all reset factors)
PRESET0, 1, 2: APB0, APB1, APB2 bus resets (bus resets issued by all reset factors)
SW-WDG reset: Software watchdog reset
HW-WDG reset: Hardware watchdog reset
CSV reset: Clock failure detection reset
FCS reset: Anomalous frequency detection reset
PORESETn: Power-on reset that is input to Cortex-M3
SYSRESETn: System reset that is input to Cortex-M3
SYSRESETREQ: "SYSRESETREQ bit" signal of Cortex-M3 internal reset control register
nTRST: SWJ-DP reset
DSTR: Deep standby transition reset

For software reset, you can run the following code anywhere (such as the interrupt, error handing etc.)

__NVIC_SystemReset()   

Note:  the core_cm3.h (CMSIS lib) should be added in your project. Otherwise you may directly write SYSRESETREQ bit in Cortex M3 reset control register.

0 Likes

> Note:  the core_cm3.h (CMSIS lib) should be added in your project. Otherwise you may directly write SYSRESETREQ bit in Cortex M3 reset control register.

Since the NVIC is part of the ARM IP and basically identical in all Cortex M3, it would be sufficent to use any CMSIS lib package, and copy the NVIC_SystemReset() function into your code.
Perhaps with some modifications to remove dependencies on other include files.
It is usually implemented in core_cm3.h (for Cortex M3) as inline function.

0 Likes