綜述單片機應用系統的抗干擾設計
3.8 選擇良好的元件
現在市場上出售的元件,很多是可用但性能不佳,甚至有些是器件廠經測試認為不合格 的產品。這些元件極易受干擾,只能在很好的環境(指電源穩定、沒有磁干擾)下工作。因此 在選購元件時,特別是單片機、晶振、RAM等,最好選購一級品。
單片機應用系統的抗干擾不可能完全依靠硬件解決,軟件抗干擾設計也是防止和消除整 個應用系統故障的重要途徑。
4.1 控制狀態失常的軟件對策
(1)軟件冗余。對于條件控制系統,對控制條件的一次采樣、處理控制輸出改為循環地 采樣、處理控制輸出。這種方法對于慣性較大的控制系統具有良好的抗干擾作用。
(2)設置當前輸出狀態寄存單元,當干擾侵入輸出通道造成輸出狀態破壞時,系統能及 時查詢寄存單元的輸出狀態信息,及時糾正輸出狀態。
(3)設自檢程序。在單片機內的特定部位或某些內存單元設狀態標志,在開機后,運行 中不斷循環測試,以保證系統中信息存儲、運輸、運算的高可靠性。
4.2 程序運行失常的軟件對策
(1)設置程序監視跟蹤定時器。目前,大多數單片機片內都集成有程序監視跟蹤定時器 。監視跟蹤定時器主要用來跟蹤程序的運行。當程序運行出現故障時,計數器溢出,系統復 位,重新運行系統程序。利用它可有效地實現程序防飛功能。
(2)設置程序指針陷阱。在每個子程序后面或程序段后,插入5條指令NOP、NOP、NOP、N OP、LJMP MAIN(其中MAIN是初始化程序開始地址),在片的空白處(特別是后面的空白處), 每32個字節放指令LJMP MAIN。設置了指針陷阱后,一旦單片機受干擾,使程序指針混亂, 執行了一段程序后,就會落入陷阱中,執行LJMP MAIN指令,回復到初始化程序開始處,從 而避免死機。
4.3 數據采集誤差的軟件對策
用軟件濾波算法,可濾掉大部分由輸入信號干擾而引起的輸出控制錯誤。最常用的方法 有算術平均值法、比較舍取法、中值法、一階遞推數字濾波法。具體選取何種方法,必須根 據信號的變化規律選擇。
5 結束語
筆者從硬件、軟件兩個方面探討了一些提高抗干擾能力的方法,這些方法有效可行,筆 者在很多系統設計采用,受到了良好的效果,基本解決了令人頭痛的干擾問題。■
參考文獻:
[1]邵貝貝.單片機的可靠性技術及其發展[J].電子產品世界.1999,(8).
[2]何立民.MCS-51系列單片機應用系統設計[M].北京航空航天大學出版社.1999 .7.
評論