看门狗的设置

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

 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

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

相关文章:

  • 2022-01-07
  • 2021-07-28
  • 2021-08-01
  • 2021-08-19
  • 2021-09-07
  • 2022-02-07
  • 2022-02-28
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-11-24
  • 2021-12-05
  • 2021-12-16
  • 2022-12-23
相关资源
相似解决方案