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