看門狗技術在某型相機導航數據接口板中的應用
摘要:介紹一種將軟件和硬件相結合實現的“看門狗”技術在某型相機導航數據接口板中的應用。結合實際應用給出硬件電路和軟件流程。實踐證明,采用該技術可使429接口板具有較高的抗干擾性及高可靠性。
在某型航空相機中,通過429總線數據接口板與任務機通訊接收相關數據和控制指令,同時與相機主板通過并口通訊交換數據,這樣一來,如果接口板程序陷入“死機”或“死循環(huán)”狀態(tài),那么整個相機系統將無法正常運行,因此,必須盡早發(fā)現故障并采取補救措施。本設計系統中采用了軟件與硬件相結合的“看門狗”技術。
1 系統中的硬件“看門狗"
專用硬件看門狗是指一些集成化的或集成在單片機內的專用看門狗電路,實際上它是一個特殊的定時器,當定時時間到時發(fā)出溢出脈沖。從實現角度上看,該方式是一種軟件與外部專用電路相結合的技術,硬件電路連接好以后,在程序中適當地插入一些看門狗復位指令(即“喂狗”指令),保證程序正常運行時看門狗不溢出;而當程序運行異常時,看門
狗超時發(fā)出溢出脈沖,并通過單片機的RESET引腳使單片機復位。在這種方式中,看門狗能否可靠有效地工作,與硬件組成及軟件的控制策略都有密切的關系。
該系統采用Maxim公司推出的內有“看門狗”(Watchdog)定時器的MAX813L型雙列直插式微處理器,其引腳排列如圖1所示。
圖2示出MAX813L“看門狗”定時器的時序。WDI為“看門狗”的輸入端.用來啟動Watchdog使定時器開始計數。當RESET有效或WDI輸入為高阻態(tài)時,Watchdog定時器被清零且不計數。當復位信號變?yōu)榈碗娖角襑DI電平發(fā)生變化(上升沿變化或下降沿變化)時,定時器開始計數。Watchdog一旦被驅動。若在1.6s內不再重新觸發(fā)WDI.或WDI不是高阻態(tài)也無復位信號時,定時器將發(fā)生計數溢出,使WDO變?yōu)榈碗娖健Mǔ#琖atchdog可使CPU擺脫“死循環(huán)”的困境,因為陷入死循環(huán)后就不可能發(fā)出WDI脈沖,最多經過1.6s后,發(fā)出WDO信號。
圖3為實際應用接口板時的“看門狗”硬件連接,其中MAX813L的1腳與8腳相連,7腳接CPU的復位腳,6腳與CPU的P1.7相連。在軟件設計中,P1.7不斷輸出脈沖信號(“喂狗”指令),如因某種原因CPU進人死循環(huán),則P1.7無脈沖輸出,經1.6s后,MAX813L的8腳輸出低電平,將該低電平加到1腳,MAX813L則產生復位輸出,使CPU有效復位,CPU從而擺脫死循環(huán)的困境。另外,當電源電壓低于門限值(4.65V)時,MAX813L也產生復位輸出,使CPU處于復位狀態(tài),不執(zhí)行任何指令,直至電源電壓恢復正常,可有效防止電源電壓較低時CPU產生錯誤的動作。以下是系統的“喂狗”函數。
Sbit WDI=P1.7:
void WatchDog()
{
WDI=1;
delayl ms();
WDI=0;
)
2 系統中的軟件“看門狗"
硬件“看門狗”技術能有效監(jiān)視程序,避免CPU陷入“死循環(huán)”或“死機”故障,但對中斷關閉故障無能為力;而軟件“看門狗”技術對高級中斷服務程序陷入“死循環(huán)”無能為力,但能監(jiān)視全部中斷關閉的故障。該系統將硬件“看門狗”與軟件“看門狗”相結合,互相取長補短。獲得出色的抗干擾效果。
圖3所示的“看門狗”硬件電路足以應對中斷服務程序出現的“死循環(huán)”故障,因此,設計軟件時只需考慮監(jiān)視所有的中斷關閉故障即可。這樣從而大大簡化軟件流程。系統要求每隔一段時間接口板要與任務機進行一次通訊,而通訊過程是在T0中斷處理程序中完成的,同時接口板還要與相機主板完成并口通訊,而這一通訊過程是在INT0中斷處理程序中完成的。這樣,一旦由于某種原因T0中斷或INT0被關閉,那么接口板將無法完成與任務機的 429通訊及與相機主板的并口數據通訊。系統軟件 設計流程如圖4所示,其中的A0、A1分別為T0、INT0中斷運行的狀態(tài)觀測器.每當T0、I:NT0中斷1次,A0、A1就相應加1。在主程序功能模塊的入口處給A0、A1賦初值,并在中斷處理程序中重新對A0、Al賦新值,由于整個429數據解碼程序一般足夠長.在解碼的過程中接口板至少會分別完成與429任務機及相機主板的一次通訊,因此在每個周期429數據解算完畢的出口處分別將.A0、A1與其初值進行比較,以判斷A0、A1是否發(fā)生變化,從而觀測二個中斷是否正常執(zhí)行。若中斷因干擾而關閉,A0、A1的值不發(fā)生變化,程序可轉向相應函數進行出錯處理,進而將程序納入正軌。
3 結論
用硬件電路使程序擺脫“死循環(huán)”或“死機”,用軟件“看門狗”技術解除中斷關閉故障,使程序重新納入正軌。這種軟硬件相結合實現“看門狗”技術的方案合理利用了硬件“看門狗”和軟件“看門狗”技術的優(yōu)點,使429接口板獲得良好的抗干擾效果及較高的可靠性。
評論