44b0实验-看门狗实验

中断实验搞定以后,看门狗就完全不在话下了。这个实验呢,分两部分。第一部分就是隔一段时间让看门口产生一个中断,在中断处理程序里对中断进行计数,当达到指定计数值的时候,完成第一部分的实验。第二部分是关掉中断,当看门狗增长到一定值以后,没人喂狗,就会自动重启。

 

下面是代码:

/****************************************
 * Watch-dog timer test  *
 ****************************************/
void Test_WDTimer(void)
{
    Uart_Printf("[WatchDog Timer Test]/n");

    rINTMSK=~(BIT_GLOBAL|BIT_WDT);
    pISR_WDT=(unsigned)Wdt_Int;
    isWdtInt=0;
 
    rWTCON=((MCLK/1000000-1)<<8)|(3<<3)|(1<<2);  //  t_watchdog = 1/66/128, interrupt enable
    rWTDAT=8448/4;
    rWTCNT=8448/4;
    rWTCON=rWTCON|(1<<5);   // 1/40/128,interrupt

    while(isWdtInt!=10);

    rWTCON=((MCLK/1000000-1)<<8)|(3<<3)|(1);  //   1/66/128, reset enable
    Uart_Printf("/nI will restart after 2 sec!!!/n");
    rWTCNT=8448*2;
    rWTCON=rWTCON|(1<<5);   // 1/40/128,interrupt
    while(1);
    rINTMSK|=BIT_GLOBAL;
}

void __irq Wdt_Int(void)
{
    rI_ISPC=BIT_WDT;
    Uart_Printf("%d ",++isWdtInt);
}

//***************************************************************************

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值