導航:首頁 > 編程語言 > 看門狗的激活代碼

看門狗的激活代碼

發布時間:2024-01-31 23:42:43

⑴ AT89S52 單片機的看門狗watchdog代碼及硬體注意事項

程序初始化中向看門狗寄存器(WDTRST地址是0A6H)中先寫入01EH,再寫入0E1H。即可激 活看門狗。
ORG 0000H
LJMP begin
Begin:
MOV 0A6H,#01EH ;先送1E
MOV 0A6H,#0E1H ;後送E1
;在程序初始化中激活看門狗。
……
……
For:
……
MOV 0A6H,#01EH ;先送1E
MOV 0A6H,#0E1H ;後送E1
;喂狗指令
……
LJMP For

在C語言中要增加一個聲明語句。 在AT89X51.h聲明文件中增加一行 sfr WDTRST = 0xA6;
Main()
{
WDTRST=0x1E;
WDTRST=0xE1;//初始化看門狗。
While (1)
{
WDTRST=0x1E;
WDTRST=0xE1;//喂狗指令
}
}

其他參考代碼:

AJMP MAIN ;匯編

MAIN:

;啟動看門狗
Mov 0A6H,#01EH ;先送1E
Mov 0A6H,#0E1H ;後送E1

;主程序
START:

ACALL WDT ;調用復位看門狗子程序

AJMP START

;主程序

;復位看門狗子程序
WDT:
Mov 0A6H,#01EH ;先送1E
Mov 0A6H,#0E1H ;後送E1
RET

END

注意事項:
1. 89S52的看門狗必須由程序激活後才開始工作。所以必須保證CPU有可靠的上電復位。否則看門狗也無法工作。
2. 看門狗使用的是CPU的晶振。在晶振停振的時候看門狗也無效。
3. 89S52隻有14位計數器。在16383個機器周期內必須至少喂狗一次。而且這個時間是固定的,無法更改。當晶振為12M時每16個毫秒需喂狗一次。還可利用定時器把看門狗的喂狗時間延長幾秒至幾分鍾。

你不往寄存器寫值,默認是沒有開看門狗的,你就不用管了

AT89S52單片機看門狗C語言程序
watchdog.h:
#include <reg52.h>
sbit LED1 = P1^0;
sbit LED2 = P1^1;
sfr WDTRST = 0xA6; //定義AT89S52擴展寄存器

/*********************************************************/
/*函數名字:wdtclear */
/*輸入參數:無 */
/*輸出參數:無 */
/*功能描述:喂狗指令 */
/*創建日期: 2009-04-25 */
/*********************************************************/
void wdtclear(void)
{
WDTRST=0x1E;
WDTRST=0xE1;
}

/*********************************************************/
/*函數名字:delay_nms */
/*輸入參數:延時毫秒周期參數 */
/*輸出參數:無 */
/*功能描述:延時 n 毫秒 */
/*創建日期: 2009-04-25 */
/*********************************************************/
void delay_nms(unsigned int n)
{
unsigned int i;
unsigned int ii;
for(i=0;i<n;i++)
{
for(ii=0;ii<1000;ii++);
wdtclear(); //LED1閃爍. 注釋掉這條語句後,LED1常亮

}
}

watchdog.c:
#include "watchdog.h"
main()
{
unsigned int i;
WDTRST = 0x1E; //開看門狗,包含兩條指令。一旦開看門狗就沒有辦法關閉。
WDTRST = 0xE1;

LED1 = 0;
while(1)
{
LED1 = 0;
delay_nms(100); //超過16毫秒不喂狗,看門狗溢出復位。
LED1 = 1;
delay_nms(100);
}
}

閱讀全文

與看門狗的激活代碼相關的資料

熱點內容
壓縮完了文件去哪裡找 瀏覽:380
武裝突襲3浩方聯機版本 瀏覽:674
網路機頂盒移動網路 瀏覽:391
iphone手機百度雲怎麼保存到qq 瀏覽:148
資料庫設計與實踐讀後感 瀏覽:112
js對象是什麼 瀏覽:744
網頁文件存pdf 瀏覽:567
文件夾正裝 瀏覽:279
剛復制的文件找不到怎麼辦 瀏覽:724
試運行適用於哪些體系文件 瀏覽:987
ghost文件復制很慢 瀏覽:967
傑德原車導航升級 瀏覽:240
編程dest是什麼意思 瀏覽:935
linux埠鏡像 瀏覽:820
iphone5屏幕清塵 瀏覽:157
機頂盒密碼怎麼改 瀏覽:672
w7系統下載32位教程 瀏覽:618
pcb文件包括哪些內容 瀏覽:598
g00文件 瀏覽:607
用bat程序刪除程序 瀏覽:516

友情鏈接