cancel
Showing results for 
Search instead for 
Did you mean: 

uPSD3212 Watchdog

raymondp
Associate II
Posted on June 06, 2005 at 11:01

uPSD3212 Watchdog

3 REPLIES 3
raymondp
Associate II
Posted on May 17, 2011 at 12:07

Seems as if the data sheet is incorrect - the WDT is NOT enabled by deafault - you have to write a non-disable value to it.

raymondp
Associate II
Posted on May 17, 2011 at 12:07

Hi

I have a simple program in a uPSD3212 that will intentionally go into a while(1) loop with disabled interrupts to force a watchdog reset. I do not write the disable code to the WDKEY register, but the watchdog never times out.

Any tips?

Thanks

jdaniel
Associate II
Posted on May 17, 2011 at 12:07

raymondp,

I would think that ST has published errata for this in the datasheet by now, but there are basically some significant differences between the way ST THOUGHT the watchdog would work and the way it actually does work.

As it turns out, writing a 0x00 to the WD register will cause it to be DISABLED rather than just providing the longest timeout value possible. As such, since most startup routines with compilers (like Keil) will intialize memory to 0, there's a good chance it gets disabled on startup.

Take a look at this post for clarification:

http://mcu.st.com/mcu/modules.php?mop=modload&name=Splatt_Forums&file=viewtopic&topic=1644&forum=11