PIC 1508 WDT使用

看门狗在大程序中的使用中的使用还是非常有必要的
PIC 1508 WDT使用
文章图片

【PIC 1508 WDT使用】 PIC 1508 WDT使用
文章图片
PIC 1508 WDT使用
文章图片

#pragma config WDTE = ON// Watchdog Timer Enable (WDT enabled)
#define _XTAL_FREQ 16000000 //16M

void main()
{
OSCCON = 0x78; //16M
__delay_ms(20);

ANSELCbits.ANSC6 = 0;
TRISCbits.TRISC6 = 0;
PORTCbits.RC6 = 1; //输出端口

ANSELAbits.ANSA4 = 0;
TRISAbits.TRISA4 = 1; //输入端口

PORTCbits.RC6 = 0;
__delay_ms(200);
PORTCbits.RC6 = 1;
__delay_ms(200);
PORTCbits.RC6 = 0;
__delay_ms(200);
PORTCbits.RC6 = 1;
__delay_ms(200);
PORTCbits.RC6 = 0;

WDTCONbits.WDTPS = 12; //4s
WDTCONbits.SWDTEN = 1;
while(1)
{
if(RA4 == 0)
{
__delay_ms(10);
if(RA4 == 0)
{
CLRWDT();
}
}
}
}

若在4s内没有对看门狗进行喂狗,则程序复位,RC6连接LED以提示

    推荐阅读