《arm linux開發
-warewin 2g/3g無線傳輸
(dtu)
和路由器—筆記》
看門狗定時器(wdt
,watch dog timer
)它實際上是乙個
計數器,一般給看門狗乙個大數,程式
開始執行後看門狗開始倒計數。如果程式
執行正常,過一段時間cpu
應發出指令讓看門狗
復位,重新開始倒計數。如果看門狗
減到0就認為
程式沒有正常工作,強制整個系統復位
。系統採用主晶元內建硬體看門狗和外接硬體看門狗同時使用,雙重保持系統的穩定性。
內建硬體看門狗從uboot
開始餵狗,外接硬體看門狗從系統進入核心後開始餵狗。使系統在整個執行過程都能時時被檢測是否執行正常,避免系統長時間宕機不能恢復。
在檢查程式異常或重啟系統時停止對看門狗餵狗處理,避免系統宕機後使用reboot
等重啟命令失效無法重啟系統。
linux硬體看門狗 需求
看門狗的作用就是防止程式發生死迴圈,或者說程式跑飛。常用的wdt
晶元如max813 ,5045, imp 813
等,硬體看門狗的清看門狗的時間很短一般是幾秒鐘內。
linux可以使用軟體看門狗 晶元內部的看門狗,但是總是感覺不是很可靠。但是選用外部硬體看門狗,清看門狗時間太短,一般幾秒,
linux
核心啟動時間過長,幾秒內不能餵狗,將導致系統反覆重啟動。在核心啟動中均勻間斷插入餵狗的語句很困難。本方案提供了一種可靠的增加外部看門狗的方法。 特點
在加電,程式重啟動,晶元復位,看門狗都能一直有效。
系統在bootstrap
,uboot
,linux
任何位置跑亂宕機,看門狗都能復位晶元
方案適當對看門狗作用週期進行了延時。
經反覆測試,實際使用外部看門狗方案完全達到設計目標。
硬體看門狗和軟體看門狗
看門狗,又叫watchdog timer,從本質上來說就是乙個定時器電路,一般有乙個輸入和乙個輸出,其中的輸入叫做餵狗,輸出一般連線到另外乙個部分的復位端,另外乙個部分就是所要處理的部分,暫且稱之為mcu。在mcu正常工作的時候,每隔一段時間輸出乙個訊號到餵狗端,給看門狗電路清零,如果在超過規定的時...
關閉看門狗
看門狗作用 在嵌入式領域,有些系統需要長期執行在無人看守的環境。在執行過程中,難免不出現系統宕機的情況,這時就需要系統自身帶有一種自動重啟的功能。watchdog一般是乙個硬體模組,其作用就是在系統宕機時,幫助系統實現重新啟動。看門狗工作方式 watchdog在硬體上實現了計時功能,啟動計時後,使用...
獨立看門狗
用我自己的話來解釋一下看門狗 看門狗就是一段程式正常執行時,阻止程式復位的 另一方面也就是說,程式非正常執行時,不能執行,程式就會產生復位,從而跳出非正常程式執行狀態。在由微控制器構成的微型計算機系統中,由於微控制器的工作常常會受到來自外界電磁場的干擾,造成程式的跑飛,而陷入死迴圈,程式的正常執行被...