<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 看門(mén)狗技術(shù)在某型相機導航數據接口板中的應用

看門(mén)狗技術(shù)在某型相機導航數據接口板中的應用

作者: 時(shí)間:2006-03-06 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:介紹一種將軟件和硬件相結合實(shí)現的“狗”在某型板中的。結合實(shí)際給出硬件電路和軟件流程。實(shí)踐證明,采用該可使429板具有較高的抗干擾性及高可靠性。

關(guān)鍵詞:航空; 抗干擾性; 可靠性; “狗”

在某型航空中,通過(guò)429總線(xiàn)板與任務(wù)機通訊接收相關(guān)和控制指令,同時(shí)與相機主板通過(guò)并口通訊交換數據,這樣一來(lái),如果接口板程序陷入“死機”或“死循環(huán)”狀態(tài),那么整個(gè)相機系統將無(wú)法正常運行,因此,必須盡早發(fā)現故障并采取補救措施。本設計系統中采用了軟件與硬件相結合的“狗”技術(shù)。

1 系統中的硬件“看門(mén)狗"

專(zhuān)用硬件看門(mén)狗是指一些集成化的或集成在單片機內的專(zhuān)用看門(mén)狗電路,實(shí)際上它是一個(gè)特殊的定時(shí)器,當定時(shí)時(shí)間到時(shí)發(fā)出溢出脈沖。從實(shí)現角度上看,該方式是一種軟件與外部專(zhuān)用電路相結合的技術(shù),硬件電路連接好以后,在程序中適當地插入一些看門(mén)狗復位指令(即“喂狗”指令),保證程序正常運行時(shí)看門(mén)狗不溢出;而當程序運行異常時(shí),看門(mén)

狗超時(shí)發(fā)出溢出脈沖,并通過(guò)單片機的RESET引腳使單片機復位。在這種方式中,看門(mén)狗能否可靠有效地工作,與硬件組成及軟件的控制策略都有密切的關(guān)系。

該系統采用Maxim公司推出的內有“看門(mén)狗”(Watchdog)定時(shí)器的MAX813L型雙列直插式微處理器,其引腳排列如圖1所示。

圖2示出MAX813L“看門(mén)狗”定時(shí)器的時(shí)序。WDI為“看門(mén)狗”的輸入端.用來(lái)啟動(dòng)Watchdog使定時(shí)器開(kāi)始計數。當RESET有效或WDI輸入為高阻態(tài)時(shí),Watchdog定時(shí)器被清零且不計數。當復位信號變?yōu)榈碗娖角襑DI電平發(fā)生變化(上升沿變化或下降沿變化)時(shí),定時(shí)器開(kāi)始計數。Watchdog一旦被驅動(dòng)。若在1.6s內不再重新觸發(fā)WDI.或WDI不是高阻態(tài)也無(wú)復位信號時(shí),定時(shí)器將發(fā)生計數溢出,使WDO變?yōu)榈碗娖?。通常,Watchdog可使CPU擺脫“死循環(huán)”的困境,因為陷入死循環(huán)后就不可能發(fā)出WDI脈沖,最多經(jīng)過(guò)1.6s后,發(fā)出WDO信號。

圖3為實(shí)際接口板時(shí)的“看門(mén)狗”硬件連接,其中MAX813L的1腳與8腳相連,7腳接CPU的復位腳,6腳與CPU的P1.7相連。在軟件設計中,P1.7不斷輸出脈沖信號(“喂狗”指令),如因某種原因CPU進(jìn)人死循環(huán),則P1.7無(wú)脈沖輸出,經(jīng)1.6s后,MAX813L的8腳輸出低電平,將該低電平加到1腳,MAX813L則產(chǎn)生復位輸出,使CPU有效復位,CPU從而擺脫死循環(huán)的困境。另外,當電源電壓低于門(mén)限值(4.65V)時(shí),MAX813L也產(chǎn)生復位輸出,使CPU處于復位狀態(tài),不執行任何指令,直至電源電壓恢復正常,可有效防止電源電壓較低時(shí)CPU產(chǎn)生錯誤的動(dòng)作。以下是系統的“喂狗”函數。

Sbit WDI=P1.7:

void WatchDog()

{

WDI=1;

delayl ms();

WDI=0;

)

2 系統中的軟件“看門(mén)狗"

硬件“看門(mén)狗”技術(shù)能有效監視程序,避免CPU陷入“死循環(huán)”或“死機”故障,但對中斷關(guān)閉故障無(wú)能為力;而軟件“看門(mén)狗”技術(shù)對高級中斷服務(wù)程序陷入“死循環(huán)”無(wú)能為力,但能監視全部中斷關(guān)閉的故障。該系統將硬件“看門(mén)狗”與軟件“看門(mén)狗”相結合,互相取長(cháng)補短。獲得出色的抗干擾效果。

圖3所示的“看門(mén)狗”硬件電路足以應對中斷服務(wù)程序出現的“死循環(huán)”故障,因此,設計軟件時(shí)只需考慮監視所有的中斷關(guān)閉故障即可。這樣從而大大簡(jiǎn)化軟件流程。系統要求每隔一段時(shí)間接口板要與任務(wù)機進(jìn)行一次通訊,而通訊過(guò)程是在T0中斷處理程序中完成的,同時(shí)接口板還要與相機主板完成并口通訊,而這一通訊過(guò)程是在INT0中斷處理程序中完成的。這樣,一旦由于某種原因T0中斷或INT0被關(guān)閉,那么接口板將無(wú)法完成與任務(wù)機的 429通訊及與相機主板的并口數據通訊。系統軟件 設計流程如圖4所示,其中的A0、A1分別為T(mén)0、INT0中斷運行的狀態(tài)觀(guān)測器.每當T0、I:NT0中斷1次,A0、A1就相應加1。在主程序功能模塊的入口處給A0、A1賦初值,并在中斷處理程序中重新對A0、Al賦新值,由于整個(gè)429數據解碼程序一般足夠長(cháng).在解碼的過(guò)程中接口板至少會(huì )分別完成與429任務(wù)機及相機主板的一次通訊,因此在每個(gè)周期429數據解算完畢的出口處分別將.A0、A1與其初值進(jìn)行比較,以判斷A0、A1是否發(fā)生變化,從而觀(guān)測二個(gè)中斷是否正常執行。若中斷因干擾而關(guān)閉,A0、A1的值不發(fā)生變化,程序可轉向相應函數進(jìn)行出錯處理,進(jìn)而將程序納入正軌。

3 結論

用硬件電路使程序擺脫“死循環(huán)”或“死機”,用軟件“看門(mén)狗”技術(shù)解除中斷關(guān)閉故障,使程序重新納入正軌。這種軟硬件相結合實(shí)現“看門(mén)狗”技術(shù)的方案合理利用了硬件“看門(mén)狗”和軟件“看門(mén)狗”技術(shù)的優(yōu)點(diǎn),使429接口板獲得良好的抗干擾效果及較高的可靠性。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>