??? 03/12/10 07:47 Read: times |
#174030 - The Watchdog does not "find" anything Responding to: ???'s previous message |
Richard Erlacher said:
the watchdog would have restarted your code had it found (sic) an infinite loop ... It is important to understand that the Watchdog does not "find" anything - it does not "detect" infinite loops, or any other program conditions. The Watchdog is simply a timer (or "counter") which, if you allow it to time-out, will cause a reset. The idea is that, in normal operation, your code restarts the Watchdog timer sufficiently often that it never times-out but, if the code gets "stuck", the restart doesn't happen, so the Watchdog timer will time-out and cause a reset. This restarting of the Watchdog timer is sometimes referred to as "patting the dog" or "feeding the dog" or "kicking the dog" or similar. If your code can get stuck in a sequence that includes "kicking the dog" then, clearly, the Watchdog cannot get you out of that! |