單片機(jī)硬件可靠性設(shè)計(jì)解決方案
發(fā)布日期:【2022-01-08 17:30:58】 瀏覽次數(shù):
1、選優(yōu)設(shè)計(jì)
在系統(tǒng)硬件設(shè)計(jì)和加工時(shí),應(yīng)該選用質(zhì)量好的接插件,設(shè)計(jì)好工藝結(jié)構(gòu);選用合格的元器件,進(jìn)行嚴(yán)格的測(cè)試、篩選和老化;設(shè)計(jì)時(shí)技術(shù)參數(shù)(如負(fù)載)要留有一定的余量或降額使用元器件;提高印制板和組裝的質(zhì)量。
2、采用硬件抗干擾措施
來自供電系統(tǒng)以及通過導(dǎo)線傳輸、電磁耦合等產(chǎn)生的電磁干擾信號(hào),是單片機(jī)系統(tǒng)工作不穩(wěn)定的重要因素,在系統(tǒng)硬件設(shè)計(jì)時(shí)必須采取有效的干擾抑制措施。單片機(jī)應(yīng)用系統(tǒng)中還常使用系統(tǒng)監(jiān)視電路檢測(cè)系統(tǒng)發(fā)生的錯(cuò)誤或故障,自動(dòng)報(bào)警或使系統(tǒng)自動(dòng)恢復(fù)正常工作狀態(tài)。如采用電源故障監(jiān)視、看門狗定時(shí)器等采用89C51單片機(jī)和X25045組成的看門狗電路,X25045硬件連接圖如圖所示。X25045芯片內(nèi)包含有一個(gè)看門狗定時(shí)器,可通過軟件預(yù)置系統(tǒng)的監(jiān)控時(shí)間。在看門狗定時(shí)器預(yù)置的時(shí)間內(nèi)若沒有總線活動(dòng),則X25045將從RESET輸出一個(gè)高電平信號(hào),經(jīng)過微分電路C2、R3輸出一個(gè)正脈沖,使CPU復(fù)位。如圖1所示電路中,CPU的復(fù)位信號(hào)共有3個(gè):上電復(fù)位(C1、R2),人工復(fù)位(S、R1、R2)和Watchdog復(fù)位(C2、R3),通過或門綜合后加到RESET端。C2、R3的時(shí)間常數(shù)不必太大,有數(shù)百微秒即可,因?yàn)檫@時(shí)CPU的振蕩器已經(jīng)在工作。
看門狗電路的定時(shí)時(shí)間長短可由具體應(yīng)用程序的循環(huán)周期決定,通常比系統(tǒng)正常工作時(shí)最大循環(huán)周期的時(shí)間略長即可。編程時(shí),可在軟件的合適地方加一條喂狗指令,使看門狗的定時(shí)時(shí)間永遠(yuǎn)達(dá)不到預(yù)置時(shí)間,系統(tǒng)就不會(huì)復(fù)位而正常工作。當(dāng)系統(tǒng)跑飛,用軟件陷阱等別的方法無法捕捉回程序時(shí),則看門狗定時(shí)時(shí)間很快增長到預(yù)置時(shí)間,迫使系統(tǒng)復(fù)位。需要注意的是,在程序正常運(yùn)行的時(shí)候,應(yīng)該在適當(dāng)?shù)牡胤郊右粭l喂狗指令,使系統(tǒng)正常運(yùn)行時(shí)的定時(shí)時(shí)間達(dá)不到預(yù)置時(shí)間。系統(tǒng)就不會(huì)復(fù)位。
3、冗余與容錯(cuò)設(shè)計(jì)
保證單片機(jī)應(yīng)用系統(tǒng)100%無故障是不可能的。容錯(cuò)是指當(dāng)系統(tǒng)的某個(gè)部件發(fā)生故障時(shí),系統(tǒng)仍能完全正常地工作,即給系統(tǒng)增加容忍故障的能力。為使系統(tǒng)具有 容錯(cuò)能力,必須在系統(tǒng)中增加適當(dāng)?shù)娜哂鄦卧?,以保證當(dāng)某個(gè)部件發(fā)生故障時(shí)能由冗余部件接替其工作,原部件修復(fù)后再恢復(fù)出錯(cuò)前的狀態(tài)。硬件冗余設(shè)計(jì)可以在元 件級(jí)、子系統(tǒng)或系統(tǒng)級(jí)上進(jìn)行。