智能看門狗是一種可定制的外部看門狗解決方案,其行為類似于監(jiān)控處理器,不同之處在于其主要用途是檢測故障發(fā)生的時間并使微控制器上電。下圖是一個簡單的例子,展示了嵌入式開發(fā)人員如何將智能看門狗集成到項目中:
智能看門狗提供了許多可定制的功能,開發(fā)人員可以利用這些功能來提高嵌入式系統(tǒng)的健壯性。例如,開發(fā)人員可以包括
l 由微控制器應(yīng)用程序產(chǎn)生并由智能看門狗監(jiān)控的心跳(HB)。如果心跳消失或頻率變化超出預(yù)定參數(shù),那么一定是出了問題!
l 當(dāng)檢測到問題時,可以連接智能看門狗,使微控制器重新通電。
l 智能看門狗可以用來監(jiān)控外部通信通道,例如連接到無線電的UART。靜默的微控制器可以觸發(fā)糾正措施來恢復(fù)系統(tǒng)。
l 由于看門狗可能正在監(jiān)控通信,因此可以為其提供特殊的fire代碼,用于遠(yuǎn)程命令智能看門狗重啟系統(tǒng)或執(zhí)行其他診斷功能。
l 外部看門狗可以作為監(jiān)控處理器,直接與微控制器通信,以驗證一切正常。
智能看門狗可以為嵌入式系統(tǒng)增加新的復(fù)雜性,但對于需要穩(wěn)定、檢測錯誤并自行恢復(fù)的嵌入式開發(fā)系統(tǒng)來說,它們在許多不同的行業(yè)中都扮演著重要的設(shè)計角色。