看門狗定時器是什么?
看門狗定時器(WDT,Watch Dog Timer)是單片機的一個組成部分,在單片機程序的調(diào)試和運行中都有著重要的意義。它的主要功能是在發(fā)生軟件故障時,通過使器件復(fù)位(如果軟件未將器件清零)將單片機復(fù)位。也可以用于將器件從休眠或空閑模式喚醒。
使能時,WDT 將遞增,直到溢出,或稱“超時”。除非處于休眠或空閑模式,WDT 超時會強制器件復(fù)位。為避免WDT 超時復(fù)位,用戶必須定期用PWRSAV 或CLRWDT 指令將看門狗定時器清零。如果WDT 在休眠或空閑模式下超時,器件將喚醒并從PWRSAV 指令執(zhí)行處繼續(xù)執(zhí)行代碼。在上述兩種情況下,WDTO 位(RCON4>)都會置1,表示該器件復(fù)位或喚醒事件是由于WDT超時引起的。如果WDT 將CPU 從休眠或空閑模式喚醒,“休眠”狀態(tài)位(RCON3>)或“空閑”狀態(tài)位(RCON2>)也會置1,表示器件之前處于省電模式。
看門狗定時器功能作用
看門狗定時器(WDT,Watch Dog Timer)是單片機的一個組成部分,在單片機程序的調(diào)試和運行中都有著重要的意義。它的主要功能是在發(fā)生軟件故障時,通過使器件復(fù)位(如果軟件未將器件清零)將單片機復(fù)位。也可以用于將器件從休眠或空閑?! 】撮T狗定時器對微控制器提供了獨立的保護(hù)系統(tǒng),當(dāng)系統(tǒng)出現(xiàn)故障時,在可選的超時周期之后,看門狗將以RESET信號作出響應(yīng),像x25045就可選超時周期為1.4秒、600毫秒、200毫秒三種。當(dāng)你的程序死機時,x25045就會使單片機復(fù)位。
大多數(shù)看門狗定時器IC產(chǎn)生一個單一的,有限的輸出脈沖持續(xù)時間當(dāng)看門狗超時。這適用于觸發(fā)復(fù)位或中斷微處理器,但有些應(yīng)用需要輸出(故障指示燈)的鎖存器。
考慮到安全性問題,汽車電子系統(tǒng)需要監(jiān)控電路監(jiān)測故障容限或安全性??撮T狗定時器可理想滿足這類需求,通過對微控制器正常工作條件下產(chǎn)生的周期脈沖進(jìn)行檢測,偵測電路或?C的失效狀態(tài),一旦發(fā)生故障可立即切換到備份/冗余系統(tǒng)。式喚醒。>看門狗定時器的操作
在正常操作期間,一次WDT 超時溢出將產(chǎn)生一次器件復(fù)位。如果器件處于休眠狀態(tài),一次WDT超時溢出將喚醒器件,使其繼續(xù)正常操作(即稱作WDT 喚醒)。對WDTE 設(shè)置位清零可以永久性地關(guān)閉WDT。
后分頻器分配完全是由軟件控制,即它可在程序執(zhí)行期間隨時更改。
為避免發(fā)生不可預(yù)測的器件復(fù)位,當(dāng)從Timer0 預(yù)分頻器的分配改為WDT 后分頻器的分配時,必須執(zhí)行下列指令序列。即使WDT 被禁止,也要執(zhí)行這個指令序列。
評論