看門狗的設置
比較簡單,根據芯片手冊上的說明進行設置。值得一提的是設置看門狗的寄存器是保護寄存器,所以在寫寄存器的時候要解除保護
1 void wtd_init(void) 2 { 3 TA=0xAA; 4 TA=0x55; 5 6 WDCON = 0x7; //根據手冊 [2:0]位表示中斷在多少秒后執行,0x7表示1.638s后中斷執行。根據需要修改低3位 7 set_WDTR; 8 set_WDCLR; 9 set_EWDT;
//總中斷記得開啟,set_EA; 10 }
這樣看門狗就設置好了,如果1.6秒沒有喂狗,那么系統會被復位。還有記得設置Config setup,在WDT的選項中選擇Enabled and keep running in ldle/Power-down mode ,否則看門狗是不起作用的
喂狗
喂狗也比較簡單
1 #define FEED_DOG() set_WDCLR
使用看門狗最恐怖的事情就是沒有發生異常而系統復位,請在適當的時候進行清狗。