Jameco Electronics Rabbit 3000 User Manual

Page 248

Advertising
background image

User’s Manual

239

gram consistency checking or because a part of the program that should be executing peri-
odically is not executing and the watchdog times out.

The Virtual Driver’s periodic interrupt hits the hardware watchdog timer with a 2 second
time-out. If the periodic interrupt stops working, then the watchdog will time out after 2
seconds. The Virtual Driver provides a number of additional “virtual” watchdog timers for
use in other parts of the code that must be entered periodically. The user program must hit
each virtual watchdog periodically.

The best practice is to let the periodic interrupt hit the hardware watchdog exclusively, and
use virtual watchdogs for other code that must be run periodically. If hits to the hardware
watchdog are scattered through a program, then it may be possible for the code to enter an
endless loop where the watchdog is hit, and therefore rendered useless for detecting the
endless loop condition. If no virtual watchdogs are used, an undetected endless loop con-
dition could still occur since the periodic interrupt can still hit the hardware watchdog.

If any of the virtual watchdogs times out, then hits are withheld from the hardware watch-
dog and it times out, resulting in a hardware reset. Virtual watchdogs may be allocated,
deallocated, enabled and disabled. The advantage of the virtual watchdogs is that if any of
them fail an error is detected.

The Dynamic C Users’s Manual chapter on the Virtual Driver provides more details on
virtual watchdogs.

Advertising
This manual is related to the following products: