為應對日益復雜的處理任務,越來越多的應用會使用微處理器搭載各種操作系統的方案。操作系統的啟動周期一般在十幾秒,有的甚至在一分鐘以上。另外,為保證在程序跑飛時系統可自恢復,在許多對可靠性要求較高的應用中,外置看門狗定時器也是不可或缺的。此類定時器的溢出周期一般為一兩秒。由于微處理器與看門狗芯片是同步上電,在看門狗定時器的溢出周期內微處理器必須提供脈沖信號來喂狗,但若系統未完全啟動,又無法提供脈沖信號,無脈沖信號,看門狗溢出,系統復位……如此會進入死鎖狀態。
在微處理器超長啟動周期中,如何有效的管理外部看門狗,本文將做詳細探討,并提供行之有效的參考設計電路。
微處理器多功能復位管理芯片
貼片電感器以UM706為例,這是一款微處理器多功能復位管理芯片,集看門狗定時器、按鍵復位、上電/掉電復位、電壓跌落預警等多種功能于一身,內置抗干擾塑封電感電路,性能穩定可靠,適合對可靠性要求高的應用場合。
圖1. UM706內部框圖
典型應用
UM706的一個典型應用如圖2所示。電路中,看門狗輸出與手動復位輸入相連,微處理的復位觸發信號可以是上電/掉電、按鍵接地或看門狗定環形電感時器溢出。該電路非常簡潔,可同時對多種復位信號進行管理,但是缺點也很明顯,就是前文提到的,若微處理器啟動周期超出看門狗溢出周期,復工字電感器位信號將反復被觸發,系統死鎖。
圖2.典型應用
微處理器啟動過程中禁止看門狗
針對圖2應用電路的不足,巧妙的增加一個SPDT(單刀雙擲)模擬開關UM3157,可以實現在微處理器啟動期間禁止看門狗。
UM706的規格書指明,當看門狗輸入端WDI懸空或三態時,看門狗禁止,內部計數器停止計數,輸出端將保持高電平。充分利用這一特性,處理器啟動期間,通過模擬開關使WDI選通到懸空通道(如圖4所示),看門狗禁止,不影響系統正常啟動;待系統啟動完畢,連接EN的I/O引腳輸出控制電平,使WDI選通到另一I/O引腳,看門狗使能,實現正常的喂狗操作(如圖5所示)。另外,需特別注意的是,一般處理器上電后,I/O引腳默認輸出高電平或低電平,無論哪種情況,只需保證啟動期間WDI懸空即可,故圖3中NC與NO引腳哪個懸空,哪個接處理器I/O,視具體情況而定。
圖3的應用電路,可以說非常實用,UM3157為SOT363封裝,尺寸僅2mm*2mm,成本非常低,占用處理器資源也很少,只需一根額外的I/O引腳控制模擬開關的通道選擇。
圖3.利用SPDT模擬開關實現啟動過程中禁止看門狗
圖4.啟動期間模擬開關狀態
圖5.啟動完畢模擬開關狀態
微處理器啟動過程中的看門狗禁止周期設置
在某些應用中,客戶希望啟動過程也要在看門狗的監控中,也就是說萬一系統啟動失敗,看門狗可以自動輸出復位信號讓系統重新啟動,這在網絡遠程啟動,無人值守的狀況下非常必要。為實現這一目的,要求看門狗溢出周期至少要比系統啟動周期長,但實際上市面上基本沒有溢出周期一分鐘以上的看門狗芯片。
如圖6所示,在圖3電路基礎上增加555定時器搭建的單穩態觸發器,通過設置外部RC元件參數,可靈活設置看門狗的禁止周期,若系統在預先由RC元件設定的時長內未完成啟動,看門狗重模壓電感新被使能,再經短暫的溢出周期后(UM706看門狗溢出周期典型值1.6秒),輸出低電平,系統被復位,重新啟動,直至成功。
圖6.利用555定時器設置看門狗禁止周期
原理分析:無論何種原因觸發復位信號,上電/掉電、按鍵接地或看門狗溢出,輸出0電平,即555電路TRIG引腳的輸入信號vi為0電平,由于vi連接至555定時器內部比較器的同相端,該比較器的反相端通過內部分壓電路連接到 大功率電感廠家 |大電流電感工廠