2005-06-06 02:01 AM
2011-05-17 03:07 AM
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.
2011-05-17 03:07 AM
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? Thanks2011-05-17 03:07 AM
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