新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 如何使用STM32的窗口看門狗

        如何使用STM32的窗口看門狗

        作者: 時間:2016-12-02 來源:網(wǎng)絡 收藏
        32F的窗口看門狗中有一個7位的遞減計數(shù)器,它會在出現(xiàn)下述2種情況之一時產(chǎn)生看門狗復位:
        1)當計數(shù)器的數(shù)值從0x40減到0x3F時
        2)當刷新看門狗時計數(shù)器的數(shù)值大于某一設定數(shù)值時,此設定數(shù)值在WWDG_CFR寄存器定義
        對于一般的看門狗,程序可以在它產(chǎn)生復位前的任意時刻刷新看門狗,但這有一個隱患,有可能程序跑亂了又跑回到正常的地方,或跑亂的程序正好執(zhí)行了刷新看門狗操作,這樣的情況下一般的看門狗就檢測不出來了;如果使用窗口看門狗,程序員可以根據(jù)程序正常執(zhí)行的時間設置刷新看門狗的一個時間窗口,保證不會提前刷新看門狗也不會滯后刷新看門狗,這樣可以檢測出程序沒有按照正常的路徑運行非正常地跳過了某些程序段的情況。
        WWDG與IWDG的主要區(qū)別是有一個窗口控制,WWDG的中斷是給你最后一次喂狗的機會,通常這個中斷不是讓你執(zhí)行喂狗操作的;一般進到這個中斷時表示你在其它地方安排的喂狗操作不能奏效,而發(fā)生這種現(xiàn)象時,肯定是系統(tǒng)有問題了,或者是程序有Bug,或者是碰到了干擾,在這種情況下,這個中斷是為了讓你的程序在發(fā)生真正的看門狗復位前,有一個緊急處理的機會,如保存重要的數(shù)據(jù),或做系統(tǒng)剎車等操作。
        由此看出,簡單地在WWDG中斷喂狗,既沒有發(fā)揮WWDG相對于IWDG的優(yōu)勢,又因為在中斷中喂狗而為以后的產(chǎn)品留下了隱患。
        注:通常的看門狗與STM32的IWDG特點是一樣的。


        關鍵詞: STM32窗口看門

        評論


        技術專區(qū)

        關閉
        主站蜘蛛池模板: 慈利县| 蓬安县| 垦利县| 贵溪市| 永福县| 合肥市| 台江县| 新蔡县| 洛南县| 康定县| 河池市| 中卫市| 贡觉县| 东港市| 鹿泉市| 常山县| 南雄市| 偃师市| 平原县| 苍南县| 湖州市| 略阳县| 开阳县| 山东省| 双鸭山市| 东平县| 高淳县| 岑溪市| 神池县| 文山县| 裕民县| 沾化县| 丘北县| 临夏县| 庐江县| 恩施市| 南川市| 新宁县| 镇雄县| 大渡口区| 凯里市|