×
单片机 > 单片机程序设计 > 详情

AT89S51中的内部看门狗程序实现

发布时间:2020-06-04 发布时间:
|

#include

sfr WDTRST = 0xA6;

int Dog_Count=0;
void Clr_WDT();
void delay_50us(unsigned int t);
  
int main()
{
    TMOD=0x11;
    TH0=0x3C;TL0=0xB0;  //50ms
    TH1=0xFC;TL1=0x18;  //1ms
    ET0=1;ET1=1;
    EA=1;
    TR0=1;TR1=1;

    Clr_WDT();

    while(1)
    {
        Dog_Count=0;
    }

    return 0;
}

void Clr_WDT()
{
    WDTRST = 0x1E;
    WDTRST = 0xE1; 
}

void IntTimer0 () interrupt 1
{
    TH0=0x3C;
    TL0=0x0B0;
}

void IntTimer1 () interrupt 3
{
    if(Dog_Count<5000)
        Clr_WDT();
    Dog_Count++;
    TH1=0xFC;
    TL1=0x18;
}



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
51单片机中断源的扩展方法