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