摘 要要保證單片機系統運行的可靠性,就需要對單片機系統進行可靠性設計。單片機在運行過程中可能會受到外界因素的干擾,如:溫度、濕度、振動、電磁干擾等,這就要求我們需要考慮單片機的硬件可靠性設計。同時單片機應用系統運行過程中也會受到其本身軟件的干擾,因此單片機軟件的可靠性設計也是必不可少的。本文將會對單片機可靠性設計思想進行簡要闡述,并對單片機應用系統被干擾后的后果進行分析,最后從硬件可靠性設計和軟件可靠性設計兩個方面進行單片機可靠性設計。
【關鍵詞】單片機 應用系統 可靠性 設計
單片機應用系統在我們的生產生活中不斷的發揮越來越重要的作用,因此針對單片機應用系統可靠性設計方面的研究也已經成為了熱門研究問題。單片機應用系統一旦被干擾可能會產生非常嚴重的后果,會帶來一些不必要的損失。單片機應用系統可靠性主要是硬件可靠性設計和軟件可靠性設計兩個方面。本文將會對單片機應用系統可靠性設計思想進行分析,最后從硬件可靠性設計和軟件可靠性設計兩個方面進行單片機應用系統可靠性設計探討。
1 單片機應用系統可靠性設計思想
根據可靠性研究理論,硬件是單片機應用系統的基礎要求,軟件是單片機應用系統的大腦;但是必須要考慮到單片機應用系統是要在一定的環境中被人操作進行運行的,因此單片機應用系統的可靠性設計必須還要考慮到對人和環境的適應性。因此在單片機應用系統的可靠性設計研究中主要是以故障為核心,考慮到人-機-環境的一體化,從單片機的硬件系統和軟件系統兩個具體的方面進行研究論證。在實際的工程實踐過程中,單片機應用系統硬件和軟件的避錯、容錯設計和抗干擾設計是提高單片機應用系統可靠性的主要內容。抗干擾設計可以保證單片機應用系統能夠在復雜的環境下可以抵抗各種干擾保持正常運行;避錯、容錯設計可以使單片機應用系統在面對一些錯誤的時候可以進行適當的診斷和容錯,保證系統能夠正常的進行運行。
2 單片機應用系統被干擾后果
單片機應用系統被干擾后會產生較為嚴重的后果,其中這些后果主要有以下幾個方面:
2.1 出現數據誤差
一旦單片機應用系統的前向通道被干擾時就會導致單片機應用系統的數據采集的誤差增大。如果單片機應用系統前向通道的傳感器接口是小電壓輸出,那么數據誤差會非常嚴重。
2.2 程序運行混亂
單片機應用系統被外來干擾侵入,如果干擾導使單片機應用系統的輸出誤差加大,導致邏輯狀態改變的話就會使整個單片機應用系統的控制失常。更為嚴重的是如果干擾較強會使程序計數器值改變,導致系統無法正常運行,最終單片機應用系統死機。
2.3 單片機應用系統被控對象混亂
出現干擾后:如果單片機的內部程序指針出現不準就會導致錯誤的程序被運行;如果DRAM中的數據被沖亂也會導致程序計算出現錯誤的結果;如果中斷系統被誤觸發就會導致系統進行錯誤的中斷處理;這些都會導致單片機應用系統的被控對象混亂。出現干擾的位置在鎖存電路和被控對象間的線路的話會導致被控對象的不穩定。
2.4 數據變化
單片機應用系統中RAM數據可能會因為干擾而發生變化,ROM雖然可以避免干擾對其產生影響,但是如果RAM和片內各種特殊功能寄存器都發生了變化的話,程序的最終計算都會產生錯誤的結果。
3 單片機應用系統硬件可靠性設計
單片機應用系統的硬件可靠性設計主要是從供電系統穩定性、印刷電路板布線、提高電元件可靠性、雙機冗余設計這幾個方面進行。
3.1 供電系統穩定性
提高單片機應用系統供電系統穩定性可以防止干擾從電源系統進入單片機。具體的做法是采用交流穩壓器保證單片機應用系統供電穩定性;采用隔離變壓器來除高頻噪聲;采用低通濾波器除掉工頻干擾。同時一定要保證供電功率足夠單片機應用系統使用,單片機應用系統主機部分要采用單獨的穩壓電源。
3.2 印刷電路板布線
單片機應用系統的電路板印刷布線應采用可以提供較好的接地網的多層印制電路板,這樣就可以較好的避免地電位差和元件的耦合。電路板中要進行合理的分區設計,地線要注意保持有序的和電源端的地線連接。為了使硬件系統更好的具有可靠性,要保證元件面和焊接面不得平行,防止出現較大的寄生耦合,信號線之間的距離要合理的調大防止干擾。
3.3 提高電元件的可靠性
進行單片機應用系統的硬件制造時要選用高質量的電元件,同時對于選定品牌的電元件要進行相應的測試和篩選,一定要保證電元件的可靠性,防止因為電元件質量問題導致單片機應用系統的可靠性降低。在進行單片機應用系統硬件設計時也要考慮選用技術參數有適當余量的電元件。
3.4 雙機冗余設計
在單片機應用系統中一些對可靠性要求較高的地方,要采用雙機冗余設計。這種單片機應用系統有主機和從機兩部分,正常情況下由主機進行正常運行控制,一旦主機出現故障,仲裁器會自動的切斷主機的控制權限,使從機發揮功能,完成相應的運行控制。這種雙機冗余設計可以進一步的增強單片機應用系統的硬件可靠性。
4 單片機應用系統軟件可靠性設計
單片機應用系統軟件可靠性設計主要是從數據誤差軟件對策、運行失控軟件對策、指令冗余、程序監視跟蹤定時器幾個方面進行。
4.1 數據誤差軟件對策
采用軟件濾波算法將出現誤差的數據進行過濾處理,可以避免因為輸入信號干擾導致的輸出控制出錯。這種方法需要根據信號變化的規律選擇合適的算法:算數平均值法、中值法、一階遞推數字濾波法等。
4.2 運行失控軟件對策
這種運行失控軟件對策可以及時的發現單片機應用系統中運行失常的軟件程序,并及時的進行處理,將整個系統恢復到初始狀態。防止單片機應用系統完全失常。
4.3 指令冗余
單字節的指令上出現錯誤程序時可以自動進入正確的指令軌道,但是多字節的指令操作上出現錯誤時會使程序出現連續錯誤,因此可以在對程序流向有關鍵作用的地方插入兩條NOP指令,這樣就可以使被彈飛的指令進入正軌。
4.4 程序監視跟蹤定時器
程序監視跟蹤定時器可以和軟件進行配合使用,這種配合使用將會使軟件系統的可靠性大大增強。它可以為CPU提供恢復信號,還可以進行看門狗監視,較好的保證單片機應用系統軟件的可靠性。
參考文獻
[1]陳敏捷,田國璋.旋轉編碼器的抗抖動計數電路[J].電子技術應用,2011,(11):70-71,75.
[2]邊永青.旋轉編碼器與PC接口設計[J].工業控制計算機,2013,(5):23-25.
作者簡介
杜洪林(1981-),男,吉林省吉林市人。碩士研究生學歷。現在供職于揚州市職業大學。研究方向為電子與通信工程。
作者單位
揚州市職業大學 江蘇省揚州市 225009