cancel
Showing results for 
Search instead for 
Did you mean: 

Software reset does not work as i would wish

kay
Associate II
Posted on June 16, 2009 at 13:25

Software reset does not work as i would wish

7 REPLIES 7
kay
Associate II
Posted on May 17, 2011 at 13:14

Hello,

we use a software reset in some cases to reset our STM32 uC oing this:

*((unsigned int*)0xE000ED0C) = 0x05FA0001;

And we have very very very very big problems with that. It seems as if the reset only resets the core and not any peripheral like timer or even PLL settings.

After a Hardware reset applikation always runs fine, software reset fails.

Every time we have to find the new reason again and handle it in startup code. isnt there a possibilitiy to do a REAL reset by software?????

:-Y

[ This message was edited by: Flasher2 on 16-06-2009 15:39 ]

sjo
Associate II
Posted on May 17, 2011 at 13:14

You may not get a reset if you have a debugger connected and effecting the reset line.

software reset worked fine for us after making sure the debugger was not connected, eg. what would happen in the real world.

Cheers

sjo

sjo
Associate II
Posted on May 17, 2011 at 13:14

Well if the debugger is not connected - do you have anything on the reset line at all?

Cheers

sjo

kay
Associate II
Posted on May 17, 2011 at 13:14

Debugger is not connected but anyway reset doesnt work :(

benedwards19
Associate II
Posted on May 17, 2011 at 13:14

Well, there's always the brute force method: use an I/O pin with a little bit of external circuitry to pull down the external reset line. Once the chip goes into reset the I/O pin will revert to a high impedance input and release the reset line.

joseph239955
Associate II
Posted on May 17, 2011 at 13:14

If you want to reset the whole system, please try:

*((volatile unsigned int*)0xE000ED0C) = 0x05FA0004;

This generate a system reset request rather then just reset the core.

(and don't forget using ''volatile'')

sjo
Associate II
Posted on May 17, 2011 at 13:14

If that still does not work you could use a watchdog to reset the system.

Cheers

sjo