




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單片機(jī)應(yīng)用系統(tǒng)的抗干擾方法要消退單片機(jī)應(yīng)用系統(tǒng)的干擾,只要去掉干擾形成的三個(gè)基本條件(干擾源、傳播路徑、敏感器件)之一即可,內(nèi)部的干擾源可以通過(guò)合理的電氣設(shè)計(jì)在肯定程度上予以消退,外部干擾源則實(shí)行屏蔽、接地、隔離等措施予以消退或切斷??垢蓴_設(shè)計(jì)的主要工作是圍繞這一部分綻開(kāi)的,上述三個(gè)部分也不是肯定劃分的,通常一個(gè)系統(tǒng)的抗干擾措施是多方面的綜合以達(dá)到最佳的效果。
在實(shí)踐中,單片機(jī)應(yīng)用系統(tǒng)的抗干擾設(shè)計(jì)一般是通過(guò)硬件抗干擾設(shè)計(jì)和軟件抗干擾設(shè)計(jì)兩種途徑來(lái)實(shí)現(xiàn)的。硬件假如設(shè)計(jì)得當(dāng),就可以將絕大部分干擾拒之門(mén)外,但仍舊會(huì)有少量干擾,所以軟件措施必不行少。由于軟件措施是以占用CPU為代價(jià)的,假如沒(méi)有硬件消退絕大部分干擾,CPU將疲于奔命,嚴(yán)峻影響系統(tǒng)的工作效率和實(shí)時(shí)性。因此一個(gè)抗干擾性良好的單片機(jī)應(yīng)用系統(tǒng)則是由硬件設(shè)計(jì)和軟件開(kāi)發(fā)相輔相成而構(gòu)成。
1.硬件抗干擾設(shè)計(jì)
①電源電路
單片機(jī)系統(tǒng)使用的電源,一般都是由電網(wǎng)的工頻溝通電源經(jīng)降壓、整流、濾波等環(huán)節(jié)后供應(yīng)。由于電網(wǎng)的影響以及生產(chǎn)現(xiàn)場(chǎng)大容量電氣設(shè)備的開(kāi)停,會(huì)使溝通電壓中含有高頻成分、浪涌電壓、尖峰脈沖或者發(fā)生較大幅度的電壓波動(dòng)。這些因素都將導(dǎo)致干擾通過(guò)電源途徑影響系統(tǒng)的正常工作。電源做得好,整個(gè)電路的抗干擾工作就完成了一大半。很多單片機(jī)對(duì)電源噪聲很敏感,因此,應(yīng)采納抗干擾的開(kāi)關(guān)電源或給單片機(jī)電源加濾波電路或穩(wěn)壓器,以削減電源噪聲對(duì)單片機(jī)的干擾。電源線的布置除了要依據(jù)電流的大小,盡量加租導(dǎo)體寬度外,還要使電源線、地線的走向與數(shù)據(jù)傳遞的方向全都。這將有助于增加抗噪聲的力量。每種型號(hào)的單片機(jī)都有一個(gè)穩(wěn)定工作的電壓范圍,例如凌陽(yáng)SPCE061A單片機(jī)工作電壓為3.3V~5V,超出這個(gè)范圍將消失特別。
②硬件復(fù)位電路
圖1采納MAX6827的復(fù)位電路
復(fù)位電路是最簡(jiǎn)單受干擾的(由于CPU內(nèi)部的復(fù)位電路的阻抗都比較高,為10~50kΩ),影響也是最大的。因此,必需實(shí)行抗干擾措施。圖1是采納MAX6827的復(fù)位及“看門(mén)狗”電路圖。該電路具有較強(qiáng)的抗干擾力量,由于沒(méi)有復(fù)位電容,不易引入干擾。
③留意印制電路板的布線
印刷電路板是單片機(jī)系統(tǒng)中器件、信號(hào)線、電源線的高密度集合體,印刷電路板設(shè)計(jì)的好壞對(duì)系統(tǒng)的抗干擾力量影響很大。故在印刷電路板設(shè)計(jì)不單是器件、線路的簡(jiǎn)潔布局支配,還必需符合抗干擾設(shè)計(jì)原則。合理設(shè)計(jì)系統(tǒng)電路板,能有效地切斷干擾的傳播途徑和抑制干擾源,同時(shí)還可以提高敏感元件(如單片機(jī)、數(shù)字IC、A/D、D/A等簡(jiǎn)單被干擾的對(duì)象)的抗干擾力量。主要實(shí)行:
[1]電路板合理分區(qū),如強(qiáng)、弱信號(hào),數(shù)字、模擬信號(hào)分區(qū)。盡可能使干擾源(如電機(jī),繼電器)遠(yuǎn)離敏感元件。大功率器件盡量布置在電路板的邊緣。
[2]布線時(shí)盡量削減回路環(huán)的面積,以降低感應(yīng)噪聲;電源線和地線要盡量粗,除減小壓降外,更重要的是降低耦合噪聲;連接線避開(kāi)90度的折線,以削減高頻噪聲放射。
[3]不用的單片機(jī)管腳,特殊是中斷的入口,不要懸空,一般要通過(guò)上拉電阻接電源。
[4]電路板上每個(gè)IC要并接一個(gè)0.01μF~0.1μF高頻電容,以削減IC對(duì)電源的影響。
[5]留意晶振布線。晶振與單片機(jī)引腳盡量靠近,用地線把時(shí)鐘區(qū)隔離(圈)起來(lái),晶振外殼接地并固定。此措施可解決很多疑難問(wèn)題。
[6]用地線把數(shù)字區(qū)與模擬區(qū)隔離,數(shù)字地與模擬地要分別,最終接于電源地一點(diǎn)匯合,呈“星形”狀。
在單片機(jī)應(yīng)用系統(tǒng)中,接地是抑制干擾的重要方法。接地是否正確,接地是否堅(jiān)固,將直接影響到系統(tǒng)的正常工作。如能將接地和屏蔽正確結(jié)合起來(lái)使用,可以解決大多數(shù)的干擾問(wèn)題。
為了防止系統(tǒng)內(nèi)部地線干擾,在設(shè)計(jì)印刷電路板時(shí)可實(shí)行如下措施:接地線盡量加粗。若接地線很細(xì),接地電位則隨著電流的變化而變化,致使計(jì)算機(jī)的定時(shí)信號(hào)電平不穩(wěn),抗噪聲性能變差。因此要依據(jù)通過(guò)電流的大小打算地線的寬度,應(yīng)在可能的狀況下,盡量將接地線條加粗、加寬,最好不小于3mm,使它能通過(guò)3倍于印刷電路板上的允許電流。對(duì)于多級(jí)電路,設(shè)計(jì)時(shí)要考慮各級(jí)動(dòng)態(tài)電流,留意接地阻抗相互耦合的影響,工作頻率低于1MHz時(shí)采納一點(diǎn)接地,工作頻率較高時(shí)實(shí)行多點(diǎn)接地。
2.軟件抗干擾設(shè)計(jì)
在單片機(jī)應(yīng)用系統(tǒng)中,盡管實(shí)行了硬件抗干擾措施,但由于干擾信號(hào)產(chǎn)生的緣由非常簡(jiǎn)單,且有很大的隨機(jī)性,因此在實(shí)行硬件抗干擾措施的基礎(chǔ)上,實(shí)行軟件措施加以補(bǔ)充。現(xiàn)簡(jiǎn)要介紹如下幾種軟件抗干擾措施。
①設(shè)立軟件陷阱(Trap)
單片機(jī)受到干擾時(shí),程序計(jì)數(shù)器PC值最簡(jiǎn)單受影響,PC值的轉(zhuǎn)變是隨機(jī)的,完全可以造成CPU離開(kāi)正確的指令挨次去執(zhí)行一些無(wú)定義地址中的內(nèi)容,或進(jìn)入數(shù)據(jù)區(qū),把數(shù)據(jù)當(dāng)作操作碼來(lái)掌握,使整個(gè)工作紊亂,系統(tǒng)失控。這種狀況對(duì)系統(tǒng)來(lái)說(shuō),比某個(gè)數(shù)據(jù)出錯(cuò)造成的危害要嚴(yán)峻得多。后者只涉及某個(gè)功能不能實(shí)現(xiàn)或者產(chǎn)生偏差,而前者則會(huì)使整個(gè)系統(tǒng)造成癱瘓。造成程序失控的緣由并非程序設(shè)計(jì)本身的問(wèn)題,而是由于外部的干擾或單片機(jī)內(nèi)部硬件瞬間故障,使得程序計(jì)數(shù)器(PC)偏離了原定的值。例如,當(dāng)執(zhí)行完一條指令時(shí),程序計(jì)數(shù)器PC應(yīng)加數(shù)值1,但由于某種緣由,使PC實(shí)際加2,這樣,程序就會(huì)把操作數(shù)和操作碼混淆起來(lái),造成后面一系列的錯(cuò)誤。
為了防止上述狀況的發(fā)生,在軟件設(shè)計(jì)時(shí),可以采納設(shè)立軟件陷阱的方法加以克服。其詳細(xì)做法是,在ROM或RAM中,每隔一些指令(如十條或二十條),把連續(xù)的幾個(gè)單元置成“00”(空操作)。這樣,當(dāng)消失程序失控時(shí)只要失控的單片機(jī)進(jìn)入這眾多的軟件陷阱中任何一個(gè),都會(huì)被捕獲,連續(xù)進(jìn)行幾個(gè)空操作。執(zhí)行這些空操作后,程序自動(dòng)恢復(fù)正常,連續(xù)執(zhí)行后面的程序。這種方法雖鋪張一些內(nèi)存單元,但可以保證程序不會(huì)跑飛。這種方法對(duì)用戶(hù)是不透亮?????的,亦即用戶(hù)根本感覺(jué)不到程序是否發(fā)生錯(cuò)誤操作。
②開(kāi)拓多個(gè)存儲(chǔ)區(qū)抗干擾
為了防止RAM出錯(cuò),丟失最重要的數(shù)據(jù),對(duì)于重要的輸入輸出數(shù)據(jù)開(kāi)拓2~3個(gè)存儲(chǔ)區(qū)同時(shí)保存。存取數(shù)據(jù)時(shí),實(shí)行比較表決法,以使數(shù)據(jù)去偽存真。
③時(shí)間監(jiān)視器
時(shí)間監(jiān)視器(Watch-DogTimer),也稱(chēng)“看門(mén)狗”技術(shù),用于設(shè)立軟件陷阱失效的狀況下,讓系統(tǒng)從故障中恢復(fù)過(guò)來(lái)。由于因干擾而失控的程序不肯定都會(huì)掉到陷阱中去,比如程序的死循環(huán)就是如此。所謂死循環(huán),就是由于某種緣由使程序陷入某個(gè)應(yīng)用程序或中斷服務(wù)子程序中做無(wú)休止的循環(huán)。這樣,CPU及其他系統(tǒng)資源被其占用而別的任務(wù)程序都無(wú)法執(zhí)行。也就是說(shuō),死循環(huán)使程序失去正常掌握,但它不會(huì)使程序掌握轉(zhuǎn)入陷阱區(qū),因而軟件陷阱無(wú)法捕獲它。
時(shí)間監(jiān)視器由兩個(gè)計(jì)數(shù)器組成,計(jì)數(shù)器靠系統(tǒng)時(shí)鐘(或分頻后的脈沖信號(hào))進(jìn)行計(jì)數(shù)。當(dāng)計(jì)數(shù)器記滿(mǎn)時(shí),將由計(jì)數(shù)器產(chǎn)生一個(gè)復(fù)位信號(hào),強(qiáng)迫系統(tǒng)復(fù)位,使系統(tǒng)重新執(zhí)行程序。在正常狀況下,每隔肯定的時(shí)間(依據(jù)系統(tǒng)應(yīng)用程序執(zhí)行的長(zhǎng)短來(lái)確定),程序使計(jì)數(shù)器清零。這樣,計(jì)數(shù)器就不會(huì)記滿(mǎn),因而不會(huì)產(chǎn)生復(fù)位。
圖2SPCE061A看門(mén)狗結(jié)構(gòu)與時(shí)序
例如,凌陽(yáng)單片機(jī)SPCE061A的WatchDog的清除時(shí)間周期為0.75s。由于WatchDog的溢出復(fù)位信號(hào)WatchDog_Reset是由4Hz時(shí)基信號(hào)經(jīng)4分頻之后產(chǎn)生的,即每4個(gè)4Hz時(shí)基信號(hào)(1s)將會(huì)產(chǎn)生一個(gè)WatchDog_Reset信號(hào)。而清除WatchDog的WatchDog_Clear信號(hào)卻可以發(fā)生在4Hz信號(hào)(0.25s)之間的任意一個(gè)時(shí)刻點(diǎn)上。假如WatchDog_Clear信號(hào)發(fā)生在4Hz信號(hào)尾端的0.01s即第0.25s時(shí)刻,此時(shí)雖然WatchDog被清除掉,但由于它發(fā)生在4Hz信號(hào)之后,再經(jīng)3個(gè)4Hz信號(hào)即0.75s,假如始終沒(méi)有WatchDog_Clear信號(hào),便會(huì)產(chǎn)生出一個(gè)WatchDog_Reset信號(hào)。如圖2所示,假如程序運(yùn)行不正常,例如陷入死循環(huán)等,計(jì)數(shù)器將記滿(mǎn)而產(chǎn)生溢出此溢出信號(hào)用來(lái)產(chǎn)生復(fù)位信號(hào),使程序重新開(kāi)頭啟動(dòng)。在編程中,我們只需將0X0001H寫(xiě)入P_WatchDog_Clear單元即可完成清除WatchDog操作,假如在0.75秒內(nèi)沒(méi)有將0X0001H寫(xiě)入P_WatchDog_Clear單元,則CPU將進(jìn)行系統(tǒng)復(fù)位操作,即平常我們說(shuō)的重啟系統(tǒng)??撮T(mén)狗常常用于延時(shí)程序中,如
voidDelay()
{
unsignedintj;
for(j=0x7fff;j0;j--);
*P_Watchdog_Clear=0x0001;//清看門(mén)狗
}
④加入空操作NOP
在ROM或RAM的若干區(qū)域內(nèi),存放若干個(gè)空操作組,空操作的個(gè)數(shù)等于所選CPU芯片最長(zhǎng)指令節(jié)數(shù)??詹僮髦噶頝OP除了占用一個(gè)存儲(chǔ)單元和執(zhí)行時(shí)間外,對(duì)CPU的工作狀態(tài)沒(méi)有影響。如有選擇地在程序某地方插進(jìn)1~2個(gè)NOP指令,也能使PC中的內(nèi)容得到調(diào)整,使程序在受到干擾后回到正確的挨次。插入的位置要在程序調(diào)試過(guò)程中摸索、分析和試驗(yàn)。一般來(lái)說(shuō),在對(duì)外設(shè)端口的操作指令、多字節(jié)指令、轉(zhuǎn)移指令、堆棧操作指令前插入NOP指令會(huì)得到好的效果。此外,還可以在空操作組之后,再增加處理跑飛的程序,而且讓CPU在執(zhí)行正常程序時(shí),不執(zhí)行這些指令組。只有當(dāng)跑飛時(shí)才有可能遇到這些指令組。例如:
NOP
NOP
NOP
LJMPFF
FF:ACALLFLY
MOVA,FLG
CJNEA,#11H,RSM
……
⑤分段式軟件抗干擾
某些時(shí)候,掌握系統(tǒng)要挨次執(zhí)行幾個(gè)不同的主循環(huán)通道以完成不同的功能。這時(shí)可在不同主環(huán)路內(nèi)編制抗干擾判別及自恢復(fù)功能。這樣做可以避開(kāi)不必要的重復(fù)執(zhí)行,以保證挨次的完整性。
⑥數(shù)字濾波
數(shù)字濾波是通過(guò)程序設(shè)計(jì)對(duì)單片機(jī)數(shù)據(jù)采集部分輸入的信號(hào)進(jìn)行加工處理,以達(dá)到抗干擾的目的。當(dāng)干擾疊加輸入通道的模擬信號(hào)時(shí),使數(shù)據(jù)采集誤差加大,特殊當(dāng)輸入通道模擬信號(hào)較弱時(shí),此現(xiàn)象更加嚴(yán)峻。為了消退數(shù)據(jù)采集的誤差,常用算術(shù)平均法、比較取舍法、一階滯后濾波法和中值法,可依據(jù)信號(hào)和干擾的規(guī)律,采納最優(yōu)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 刀具供貨合同范本
- 室內(nèi)裝修雨季施工方案
- 人員安全協(xié)議合同范本
- 保潔公司臨時(shí)合同范例
- 體育設(shè)備購(gòu)銷(xiāo)合同范例
- 公司店鋪?zhàn)鈶{合同范例
- 上海整車(chē)運(yùn)輸業(yè)務(wù)合同范例
- kfc加盟合同范例
- 臨沂代工合同范例
- 保密協(xié)議競(jìng)業(yè)禁止合同范例
- 2024年證券投資基金基礎(chǔ)知識(shí)真題答案及解析
- 2021年寧夏公務(wù)員考試《行測(cè)》真題和答案解析
- 混凝土強(qiáng)度評(píng)定表(自動(dòng)計(jì)算)
- 你會(huì)撥打120嗎 主題班會(huì) 課件
- 小學(xué)教育大學(xué)生職業(yè)生涯與規(guī)劃
- ADS射頻電路設(shè)計(jì)與仿真從入門(mén)到精通
- 八大危險(xiǎn)作業(yè)檢查表
- 農(nóng)業(yè)物聯(lián)網(wǎng)技術(shù)的培訓(xùn)
- 民辦幼兒園會(huì)計(jì)制度范本
- 2024消防安全基礎(chǔ)知識(shí)培訓(xùn)課件
- 水庫(kù)清淤可行性方案
評(píng)論
0/150
提交評(píng)論