N76E003---看门狗

看门狗的设置

比较简单,根据芯片手册上的说明进行设置。值得一提的是设置看门狗的寄存器是保护寄存器,所以在写寄存器的时候要解除保护

 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

使用看门狗最恐怖的事情就是没有发生异常而系统复位,请在适当的时候进行清狗。

原文地址:https://www.cnblogs.com/r1chie/p/10721520.html