新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > AT89S51看門狗功能的使用方法

        AT89S51看門狗功能的使用方法

        作者: 時間:2016-11-10 來源:網絡 收藏
          在程序初始化中向看門狗寄存器(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

        本文引用地址:http://www.104case.com/article/201611/317460.htm

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

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



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 青铜峡市| 西乌珠穆沁旗| 富锦市| 东山县| 中牟县| 高唐县| 平谷区| 德安县| 汉中市| 祁门县| 元朗区| 彩票| 马鞍山市| 周宁县| 全州县| 普定县| 九龙坡区| 迭部县| 威远县| 海口市| 汝州市| 葫芦岛市| 青阳县| 四子王旗| 亚东县| 宁远县| 太谷县| 永靖县| 舟山市| 拉萨市| 佳木斯市| 肇庆市| 临江市| 陆川县| 法库县| 长乐市| 西华县| 富源县| 福贡县| 陕西省| 大同市|