*此程序实现单片机看门狗wdt的功能*/
#includep18f458.h
unsignedlongi;
/*系统初始化子程序*/
voidinitial()
{
trisd = 0x00;/*d口设为输出*/
}
/*延时子程序*/
voiddelay()
{
for(i=19999;--i;)
continue;
}
/*主程序*/
main ()
{
initial();/*初始化,设定看门狗的相关寄存器*/
portd = 0x00;/*d口送00h,发光二极管亮*/
delay();/*给予一定时间的延时*/
portd = 0xff;/*d口送ffh,发光二极管灭*/
while(1)
{
;
}/*死循环,等待看门狗溢出复位*/
}
-------------------汇编语言版本的单片机看门狗程序----------------
;此程序实现看门狗wdt的功能
;此单片机看门狗由独家提供
listp=18f458
includep18f458.inc
deyhequ0x20
deylequdeyh+1
org0x00
gotomain
org0x30
;*************初始化子程序*****************
initial
clrftrisd;d口设为输出
return
;**************延时子程序**************************
delay
movlw0xff
movwfdeyh
again1
movlw0xff
movwfdeyl
again2
decfszdeyl
gotoagain2
decfszdeyh
gotoagain1
nop
return
;************单片机看门狗主程序****************************
mainnop
callinitial;系统初始化
movlw0x00
movwfportd;d口送00h,发光二极管亮
calldelay
movlw0xff
movwfportd;d口送ffh,发光二极管灭
loop
gotoloop;死循环,等待看门狗复位
end