看门狗溢出测试

  1. #include<reg52.h>  
  2.   
  3. sfr  WDTRST  =   0xA6;                
  4.   
  5. sbit key = P3^1;           
  6.   
  7.   
  8. //喂狗  
  9. void Rst_Watchdog( void )  
  10. {  
  11.     WDTRST  = 0x1E; //先赋值1E 然后赋值E1  
  12.     WDTRST  = 0xE1;  
  13. }  
  14.   
  15.   
  16. void main( void )  
  17. {  
  18.     int i;  
  19.                                 // 设置看门狗时间为1个时钟循环后  
  20.     Rst_Watchdog();  
  21.                                 //关看门狗一个时钟循环  
  22.     for( i = 0; i < 500; i++)  
  23.     {  
  24.         Rst_Watchdog();                  
  25.     }  
  26.     P1=0x00;  
  27.     while(!key)                 //按下按键不松开,表示程序一直在按键处循环,  
  28.                                 //并用LED显示0x55  
  29.     {  
  30.      P1=0x55;                   //模拟出错 正常情况应该一直显示LED,  
  31.                                 //但是加看门狗之后不间断复位,倒是LED闪烁  
  32.     }  
  33. }

你可能感兴趣的:(看门狗溢出测试)