淺談微控制器應用系統的抗干擾技術論文

才智咖 人氣:2.47W

隨著計算技術的普及,系統工作可靠與否已經成為了系統能否發揮作用及工作成敗的重大問題。微控制器本身的干擾是最致命的干擾。微控制器常常由於受到干擾而不能按正常執行程式,從而引起混亂。防止微控制器“宕機”的干擾技術主要從軟體和硬體兩個方面考慮。在硬體採用切斷干擾傳播路徑,提高敏感器件的抗干擾性能;在軟體上採用軟體陷阱技術防干擾引起程式跑飛,並對兩個可能存在的隱患採取有效的措施。

淺談微控制器應用系統的抗干擾技術論文

1 抗干擾的硬體技術

1.1 看門狗

看門狗是由CPU 控制的定時器,可以用來監視軟體的執行及系統的工作狀態,分為1 級看門狗和2 級看門狗。定時脈衝是由硬體直接產生或用微控制器的ALE 訊號。2 級看門狗額度兩個定時器是同步進行的,因其定時器是同時清除的。

(1)級看門狗的定時器1 的定時長度為t1, 主程式迴圈週期為T,設計T 和t1 為T<t1<2t。cpu 1="" cpu="" p="" reset="">

(2)級看門狗是較完備的,它可使系統恢復到較理想的程度。定義2 級看門狗定時器2 的定時長度為 t2 ,設計 t2 為:t2>t1>T,0<t2-t1

1.2 遠端強制復位

該技術用於微控制器多機通訊時,主機給從機復位。此技術不佔用系統資源,在程式設計時也不用增加多餘語句。設計一個監控電路,監視主機給從機傳輸命令的通道。合理安排工作時序,每隔一定時間,主機發出各種命令從機予以響應。若從機受到干擾失控,主機可以從應答命令的情況判斷出,然後對其停止一定時間的控制操作。從機的通道監視電路收不到訊號時,控制復位電路產生Reset 訊號,使微控制器系統復位。

以上介紹了微控制器應用系統的二種抗干擾的硬體技術,除此之外還可以針對不同的干擾源採取不同的抗干擾措施。如針對電磁干擾,可採用遮蔽易干擾的電路、裝置或直接遮蔽輻射源的方式達到抑制干擾的效果;針對過程通道干擾可採用光電耦合隔離、雙絞線傳輸等方式抑制干擾;而對於抑制供電系統的干擾,則可採用使用交流穩壓器、分立式供電、用低通濾波器過濾高次諧波等方式。

2 抗干擾的軟體技術

(1)微控制器的程式能夠井然有序的進行,要使程式執行環境安全可靠,一是硬體基礎必須可靠,有足夠的能力承擔程式的執行壓力,二是軟體必須可靠,軟體的可靠性體現在兩個方面:足夠的容錯設計和初始化資料儲存器。

1)足夠的容錯設計

儘管微控制器擁有許多抗干擾的`機制,但由於其工作環境太過複雜,干擾還是不能避免的。除外界環境對微控制器的干擾之外,還存在許多人為因素與硬體因素造成的干擾,比如操作失誤、硬體出錯等,因此在設計軟體是還要有足夠的容錯設計,在微控制器應用系統受到不正常激勵訊號的時候,足夠的容錯設計能遮蔽掉大部分的不正常激勵訊號,對於那些沒有被遮蔽掉的不正常激勵訊號,軟體的容錯設計能對其進行有序化處理,是微控制器應用系統在受到不正常激勵訊號干擾的情況下還能保證程式的正常執行,除此之外,足夠的容錯設計還能減輕干擾對微控制器應用系統的影響。

2)初始化資料儲存器

在微控制器應用系統執行過程中,存在血多資料處理、資料儲存的問題,因此,資料儲存對於微控制器應用系統是非常重要的。當微控制器剛上電時,微控制器應用系統及資料儲存器會有所不穩定,如果直接使用資料儲存器,可能會導致資料出現偏差。所以,在設計軟體時,應注意對資料儲存器的初始化,增強軟體的可靠性。

(2)微控制器應用系統的軟體抗干擾措施

1)設計軟體陷阱技術

我們現在採用設定軟體陷阱的方法攔截紊亂程式,將計數器引向一個制定的位置,然後執行一段對程式執行出錯的處理解決程式。以下為陷阱設計的一般運用方案。ERROR 為指定位置,出錯處理程式軟體陷阱可安排在下面幾個資料區進行有效處理。

中斷向量區未使用的部分割槽域。當干擾源程式使未使用的中斷開放,並加以啟用這些中斷後,一般引起系統程式的紊亂,及時捕捉到錯誤的辦法一般是在中斷位置設定軟體陷阱。軟體程式資料區域,一般運用指令冗餘技術加以解決紊亂的程式在使用者程式內部跳轉,亦可以設定相關的軟體陷阱,從而阻止程式紊亂。微控制器的程式一般經常採用模組化設計,模組化設計程式是由一系列指令完成的,所以不能在這些指令中隨意插入陷阱,一般將陷阱處理軟體指令分佈在各應用模板的空餘資料單元裡。正常程式中不會執行這些陷阱軟體指令,如果程式紊亂從而進入陷阱區,則馬上會將程式引入正確pc 計數器。

2)監視跟蹤定時器

當程式跑飛進入無窮迴圈時,以上的方法均不能解決這種情況,這時應使用監視跟蹤定時器解決,該技術就是不斷監視程式迴圈執行時間間隔,若發現時間間隔超過已知的迴圈設定的時間間隔,就可以認定程式以進入死程式,然後加跳轉指令LJMP 使程式返回到入口地址0000H,在0000H 新增相關的出錯處理程式指令,使系統重新執行正常。

在日常生活中,微控制器必不可免的會受到干擾,干擾對微控制器造成的影響是難以想象的。我們必須對微控制器的抗干擾性進行研究和探索,對微控制器的各個執行過程瞭如指掌,才能更好的研究微控制器,開發微控制器,對微控制器的系統應用採取全方位的保護。