48
Watchdog Timer
(One time Enable dengan Reset out)
Watch
dog
timer
dimaksudkan
sebagai
metode
pemulihan
dalam situasi
dimana
CPU
mungkin
menjadi
pokok
dari
kerusakan
software.
dimana
mencegah
terjadinya
hang,
jika
tidak
memenuhi
waktu
yang
di
tentukan
dalam
perintah-perintah
program yang
di
jalankan
maka akan
compile program di reset dan
mulai dari
awal. WDT
terdiri dari 13
bit counter dan watchdog Timer
reset (WDTRST) SFR. WDT set awal untuk membuat
disable dari exiting
reset. Untuk
membuat enable WDT,
user
harus
menulis 01E H dan
0E1
H
dalam urutan
pada
WDTRST
register
(SFR
berlokasi
di
0A6H).
sewaktu
WDT
berfungsi, WDT akan menambah setiap machine cycle sementara osilator sedang
berjalan. Periode masa habis WDT tergantung pada eksternal clock frequency. Disana
tidak ada jalan untuk disable WDT kecuali melalui reset (salah satu dari reset hardware
atau WDT over flow reset).
Sewaktu WDT berlebihan arus (over flow), WDT akan
membuat output Reset aktif (High Pulse) pada pin RST (reset).
Cara menggunakan WDT
Untuk
membuat
enable
WDT,
user
harus
menulis
di
lokasi
01EH
dan
0E1H
dalam
urutan
pada
WDTRST
register
(SFR
berlokasi di 0A6H). sewaktu WDT enable,
kebutuhan user untuk menugaskan WDT dengan menulis pada lokasi 01EH dan 0E1H
pada
WDTRST
untuk
menghindari
WDT
over flow. Counter 13 bit belebihan arus
sewaktu mencapai 8191 (1FFFH), dan ini akan meng reset ICnya. Sewaktu WDT
enable, WDT akan
menambah setiap
machine cycle sementara osilator sedang berjalan.
Ini berarti user harus reset WDT setidaknya setiap 8191 (1FFFH) machine cycles.untuk
meng reset WDT
maka
user
harus
menulis 01E H dan 0E1 H pada WDTRST.
Dimana
WDTRST
merupakan
write
only
register.
WDT
counter
tidak
bisa
di
baca
ataupun
di
|