看門狗定時器可以集成在單片機(MCU)內部,也可以作為單獨的芯片放在外部。看門狗芯片具有集成電路中重要的監(jiān)視功能,使你可以從內部和外部監(jiān)視系統(tǒng)的故障,并在發(fā)生故障時采取措施。
看門狗定時器是什么?
簡而言之,看門狗定時器是一種在特定時間段內未收到來自處理器的周期性脈沖信號的斷言復位輸出的設備。一種實現方式是通過處理器的數字信號輸出(GPIO)饋入外部看門狗定時器的看門狗輸入(WDI)。比如EN8F156是具有看門狗定時器功能的芯片。
處理器會定期向看門狗定時器發(fā)送一個脈沖,以指示系統(tǒng)軟件運行正常。如果看門狗定時器未在指定的時間范圍內接收到該脈沖(稱為看門狗超時),則看門狗定時器將發(fā)出復位輸出。此重置輸出可用于通知系統(tǒng)處理器已掛起或凍結,或重置處理器本身。圖2說明了在看門狗超時內接收到的脈沖以及在看門狗超時后到期后接收到的脈沖。
看門狗計時器為何如此重要?
看門狗定時器提供了一種警告系統(tǒng)或重置其軟件已凍結或掛起的處理器的方法。盡管沒有人故意設計凍結的軟件,但是優(yōu)秀的系統(tǒng)設計人員無論如何都要為故障做計劃-因為總是為意外做好準備。沒有此監(jiān)視,處理器可能會無限期保持凍結狀態(tài),并導致進一步的系統(tǒng)故障。具有可調超時間隔的外部看門狗計時器可以在幾毫秒內識別出這些軟件死機,并適當地重置系統(tǒng)或處理器。在嵌入式系統(tǒng)或遠程系統(tǒng)中,手動復位系統(tǒng)不可行甚至無法實現,該功能特別必要。
如何在嵌入式系統(tǒng)中實現看門狗定時器功能?
有兩種實現監(jiān)視計時器的主要方法:
1.使用具有集成看門狗功能的處理器。現在許多單片機(MCU)都集成了看門狗功能。這很有價值,因為它非常易于實現,并且不需要其他IC。但是,它帶有一個主要警告:集成的看門狗可能無法始終按預期運行,因為導致MCU出現故障的代碼問題還可能無意中禁用了看門狗定時器。同樣,軟件的編寫方式應使內部看門狗能夠檢測到任何凍結或掛起。但是,采取額外的步驟以冗余方式監(jiān)視看門狗輸入可以幫助解決代碼中無法預料的錯誤。
2.使用外部看門狗定時器。一些具有看門狗定時器功能的IC芯片(例如EN8P1111或EN8P2712)使你能夠以外部方式監(jiān)視電源電壓和看門狗信號。如果單片機(MCU)的內部無法檢測,則外部看門狗定時器將起到監(jiān)測作用。
原則上,看門狗定時器的功能不會過于復雜。但是,它在維護系統(tǒng)可靠性方面的重要性不言而喻。如果無法或難以在故障情況下由人啟動的系統(tǒng)重置,則尤其如此。
-
處理器
+關注
關注
68文章
19178瀏覽量
229200 -
看門狗定時器
+關注
關注
0文章
38瀏覽量
16245
發(fā)布評論請先 登錄
相關推薦
評論