44 | |||
|
|
|
|
What is a Watch Dog?
The Watch Dog is a hardware countdown timer
Once enabled the Watch Dog must be refreshed (reloaded with the starting timeout value) by the application software before the timeout expires.
If the program execution stops, the application software will not refresh the Watch Dog anymore. A hardware reset will be generated when the timeout expires.
The Watch Dog is implemented using the National PC87364 SPIO Watch Dog feature.
How to use the Watch Dog
To enable, disable and refresh the Watch Dog you can:
•Use the System BIOS INT52h functions.
•Directly access Watch Dog I/O mapped registers.
Use the System BIOS INT 52h functions
This method can be used only with operating systems that preserve BIOS functions after boot (like DOS). Watch Dog timeout is fixed at 2 seconds.
How to turn the Watch Dog ON
Make a call to INT52h with AH=00Ch. The Watch Dog will be enabled to a fixed timeout of 2 seconds. Then the Watch Dog must be periodically (before 2 seconds) refreshed to avoid a hardware reset.
Assembler code example:
MOV AH,00Ch
INT 052h
How to refresh Watch Dog
Make a call to INT52h with AH=00Eh. The Watch Dog counter will be reloaded with a fixed timeout of 2 seconds.
Assembler code example:
MOV AH,00Eh
INT 052h