王高建
【摘要】單片機應用系統的可靠性設計是一個重要的設計過程,并具有很強的工程實踐性。單片機應用系統的可靠性由多種因素決定,提高可靠性包括兩方面的工作:一是在工藝上提高構成系統的元器件本身的可靠性;二是在系統結構的合理設計方面提高整個系統的可靠性。
【關鍵詞】單片機;可靠性;工程實踐性
一、元器件的選擇與使用
元器件是組成單片機應用系統硬件的基本單元,合理選擇與使用元器件對整個系統的可靠性運行是非常重要的,因為系統中任何一個元器件(甚至一個二極管)發生故障都會導致整個系統不能正常工作,甚至損壞系統。元器件的選擇要結合具體系統的硬件可靠性分析進行。
在元器件選擇上一般應注意以下幾點:
1、盡量選用大規模或大規模集成電路芯片來設計系統
這可大大減少電路間的分布電容,減少干擾信號耦合,同時也可減少由于元器件性能的離散性所造成的瞬態偶發性失效故障。目前CMOS型集成電路芯片被愈來愈多地使用,它在可靠性方面具有明顯的優點。
2、盡可能選擇熱穩定行好、噪聲系數小的元器件
單片機應用系統運行的環境溫度變化較大,而且輸入信號比較微弱,有些要經過幾十倍、幾百倍、甚至上千倍的放大。溫度偏差或噪聲信號過大都可能造成系統工作不穩定,甚至出現故障。
3、元器件的性能參數應當匹配
通常,電子器件在出廠前都進行了空載老化等質量處理。必要時我們可對重要器件進行帶載老化處理,使它們通上電,帶上額定負載,在恒溫箱中存放幾十小時后取出在篩選。
二、干擾問題
單片機應用系統在運行的過程中會遇到各種各樣的干擾問題。本設計主要介紹輸入系統的抗干擾措施。
1、開關量輸入的抗干擾措施
開關量輸入往往會給系統帶來很強的干擾,這樣就需要我們設計一個電路如防抖電路或通過軟件程序來已抑制干擾、例如鍵盤這樣的開關量輸入設備,在按鍵的過程中會存在著抖動的問題,這樣按鍵抖動就形成了開關量的輸入干擾,處理這樣的開關量輸入干擾一般最常用的措施是光電隔離電路,如圖1所示。這種措施使得開關量輸入與單片機系統隔離開來,大大增強了系統的可靠性。
在圖1中,輸入為開關量,不論其電平標準如何,都可以通過調節限電阻R3來控制光電耦合器中發光二極管的發光狀態,進而控制耦合器中三級管的通短,使單片機的P1.1口得到標準的檢測電壓值。這種措施能有效地抑制尖峰脈沖及其他各種噪聲的干擾。
2、模擬量通道的抗干擾措施
與開關量輸入、輸出通道一樣,模擬量輸入、輸出通道也因與測控設備直接相連而成為強電干擾竄入系統的渠道。在模擬量輸入、輸出通道上采取抗干擾措施時,應盡可能將抗干擾的屏蔽器件設置在執行部件或傳感附近。
用于模擬量抗干擾的器件很多,但主要還是光電耦合器和隔離變壓器。A/D轉換器的并行輸入口、D/A轉換器的并行輸入口以及它們的地址和控制線都用光點耦合器進行隔離,同時光電耦合器的輸入和輸出回路分別供電,完全切斷了單片機系統與外部供電系統的聯系。
三、硬件系統可靠性措施
上述防止和消除干擾的硬件主動性措施是有效的,但并不能完全保證系統的正常運行,有時還需要系統工作狀態的監視、異常情況的處理與故障自恢復的問題。這是就需要配合一些硬件措施,在軟件可靠性方面著手。監視定時器的設計與應用是其中最常用最有效的方法之一,甚至隨著單片機技術的發展,越來越多的單片機本身就帶有監視定時器。
監視定時器實質上就是專用的定時/計數器,它的時鐘來自單片機內部或外部。我們通過適當的程序設計,使系統在正常運行時,定時器每隔一定的時間將其初值化一次,保證不使其計數溢出。一旦系統出現異常,程序不能正常運行而亂時,則監視定時器不能再有限的時間內被消零,造成計數溢出,引起系統中斷,而使CPU轉入故障診斷于處理程序,而后恢復系統的正常運行。由此可見,監視定時器提供了一中使系統從瞬時故障中能夠自動恢復的能力,其軟硬件實現也比較簡單,因而獲得了廣泛的應用,長稱之為看門狗(WATCH DOG)。
四、軟件系統可靠性
為了提高系統的穩定性和系統的精度,在程序方面可以采用各種措施,如數字濾波、自恢復、設置陷阱等。
1、數字濾波
數字濾波能夠清除有用信號中混雜的各種干擾信號,保證采集來的信號不失真,進而達到提高應用系統精度的目的。數字濾波器是根據系統的性質、信號的來源、工作環境、系統精度要求,然后通過程序的方法采用不同形式抑制干擾,保持信號的本來面目。
數字濾波有多種形式,根據實際情況的不同來加以選擇和運用。
(1)中值濾波
所謂中值濾波就是對某一個被測參數連續采樣n次(一般n取奇數),然后將n次采樣值進行排序,最后取中間值作為有效值存入單片機內部儲存中,該方法主要適用于具有脈動干擾的場合,該方法的場合,它非常適合快速變化的信號采集。
(2)算術均值濾波
改方法是將n次采樣值相加,然后取其算術平均值作為本次采樣有效值來使用。
(3)復合濾波
所謂復合濾波,就是將兩種或者兩種以上的濾波方法同時使用。復合濾波可大大提高濾波效果。目的被經常使用的復合濾波是中值濾波和算術平均值濾波聯合使用。
2、陷阱指令
為了提高單片機應用系統工作的穩定性,防止程序由于干擾而“跑飛”,設計者可以在程序儲存器的空白區設置空操作指令和少量的短字節轉移指令。所謂的自陷指令通常指轉移指令。在設置陷阱前,若由于干擾PC的地址值跑到程序儲存器區域外,此時程序就再也無法正常運行了。在設置了陷阱后,有空白程序區存放了大量的空操作指令如少量的轉移指令后由于干擾PC值脫離了程序存儲區二進入空白程序存儲區,遇到空操作指令(單字節)它會順著NOP執行,當運行到轉移指令時,系統又恢復了正常程序區,使系統恢復正常。該法不但適用于單片機應用系統也適用于一切計算機應用系統。
五、結束語
單片機系統運行的可靠性會不確定因素的干擾。提高單片機應用系統的可靠性要從軟硬件入手。提高系統的自身防御行為,以上所提到幾種提高可靠性的方法,都不是單獨使用的,只有根據實際情況將這些方法有效地結合起來,才能達到最佳抗干擾效果,使我們的單片機系統穩定可靠地工作。
【參考文獻】
[1] 張 齊. 單片機應用系統設計技術[M]. 北京:電子工業出版社, 2004.
[2] 韓志軍. 單片機應用系統設計技術[M]. 北京:機械工業出版社, 2005.
[3] 徐煜明. 單片機及應用系統設計[M]. 北京:電子工業出版社, 2009.