單片機(jī)看門狗程序
*此程序?qū)崿F(xiàn)單片機(jī)"看門狗"WDT的功能*/#include "p18f458.h"
unsigned long i;
/*系統(tǒng)初始化子程序*/
void initial()
{
TRISD = 0X00; /*D口設(shè)為輸出*/
}
/*延時(shí)子程序*/
void DELAY()
{
for (i=19999;--i;)
continue;
}
/*主程序*/
main ()
{
initial(); /*初始化,設(shè)定看門狗的相關(guān)寄存器*/
PORTD = 0X00; /*D口送00H,發(fā)光二極管亮*/
DELAY(); /*給予一定時(shí)間的延時(shí)*/
PORTD = 0XFF; /*D口送FFH,發(fā)光二極管滅*/
while(1)
{
;
} /*死循環(huán),等待看門狗溢出復(fù)位*/
}
-------------------匯編語言版本的單片機(jī)看門狗程序----------------
;此程序?qū)崿F(xiàn)"看門狗"WDT的功能
;此單片機(jī)看門狗由http://www.diangon.com獨(dú)家提供
LIST P=18F458
INCLUDE "P18F458.INC"
DEYH EQU 0X20
DEYL EQU DEYH+1
ORG 0X00
GOTO MAIN
ORG 0X30
;*************初始化子程序*****************
INITIAL
CLRF TRISD ;D口設(shè)為輸出
RETURN
;**************延時(shí)子程序**************************
DELAY
MOVLW 0XFF
MOVWF DEYH
AGAIN1
MOVLW 0XFF
MOVWF DEYL
AGAIN2
DECFSZ DEYL
GOTO AGAIN2
DECFSZ DEYH
GOTO AGAIN1
NOP
RETURN
;************單片機(jī)看門狗主程序****************************
MAIN NOP
CALL INITIAL ;系統(tǒng)初始化
MOVLW 0X00
MOVWF PORTD ;D口送00H,發(fā)光二極管亮
CALL DELAY
MOVLW 0XFF
MOVWF PORTD ;D口送FFH,發(fā)光二極管滅
LOOP
GOTO LOOP ;死循環(huán),等待看門狗復(fù)位
END
編輯:admin 最后修改時(shí)間:2018-05-08