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