看門狗,又叫watchdog timer,從本質上來說就是一個定時器電路,一般有一個輸入和一個輸出,其中的輸入叫做喂狗,輸出一般連接到另外一個部分的復位端,另外一個部分就是所要處理的部分,暫且稱之為MCU。
在MCU正常工作的時候,每隔一段時間輸出一個信號到喂狗端,給看門狗電路清零,如果在超過規定的時間不喂狗,WDT定時超時,就會回給一個復位信號到達MCU,使MCU復位,防止MCU死機。總的來說,看門狗電路的作用就是防止程序發生死循環,或者說程序跑飛。
WDT的基本工作原理如下:在整個系統運行以后就啟動了看門狗的計數器,此時看門狗就開始自動計時,如果到達了一定的時間還不去給它清零,看門狗計數器就會溢出從而引起看門狗中斷,造成系統的復位。
硬件看門狗就是利用了一個定時電路,來監控主程序的運行。在主程序的運行中,我們要在定時時間到達之前對定時器進行復位。
看門狗的作用就是防止程序無限制的運行,造成死循環。它可以用在接收和發送數據時對接受和發送超時的處理,起到保護數據,保護電路的作用。
關鍵詞:
看門狗原理和作