新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 89S51看門狗的使用方法

89S51看門狗的使用方法

作者: 時間:2013-03-08 來源:網(wǎng)絡(luò) 收藏

系列的與89C51功能相同。指令兼容。HEX程序無需任何轉(zhuǎn)換可以直接使用。只比89C51增加了一個功能。89S51的其它功能可以參見89C51的資料。

具體使用方法如下:

在程序初始化中向寄存器(WDTRST地址是0A6H)中先寫入01EH,再寫入0E1H。即可激活看門狗。

Org 0000

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;//喂狗指令

}

}

注意事項:

1. 89S51的看門狗必須由程序激活后才開始工作。所以必須保證CPU有可靠的上電復(fù)位。否則看門狗也無法工作。

2. 看門狗使用的是CPU的晶振。在晶振停振的時候看門狗也無效。

3. 89S51只有14位計數(shù)器。在16383個機器周期內(nèi)必須至少喂狗一次。而且這個時間是固定的,無法更改。當(dāng)晶振為12M時每16個毫秒需喂狗一次。



關(guān)鍵詞: 89S51 看門狗 ATMEL

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉