亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于單片機系統(tǒng)軟件抗干擾技術(shù)研究

        2015-11-28 03:06:58薛金水
        山西電子技術(shù) 2015年5期
        關(guān)鍵詞:備份指令單片機

        薛金水

        (廣東工程職業(yè)技術(shù)學(xué)院,廣東 廣州 510520)

        各種單片機系統(tǒng)在應(yīng)用過程中不可避免會產(chǎn)生諸多干擾。干擾包括來源于周圍環(huán)境其他電氣設(shè)備的電磁場和電火花干擾,和內(nèi)部電子線路或電源變化產(chǎn)生的電磁干擾、固有噪聲源等。干擾會造成系統(tǒng)設(shè)備的信息輸入產(chǎn)生誤差、內(nèi)部程序損壞,導(dǎo)致系統(tǒng)控制失靈,甚至是直接破壞系統(tǒng)硬件,引發(fā)安全事故。

        對于消除干擾信號影響,采用硬件抗干擾措施是基礎(chǔ)。因為干擾信號主要通過硬件電路在信號檢測與輸入、數(shù)據(jù)處理和輸出控制等方面進(jìn)行過濾和抑制。和硬件抗干擾技術(shù)相比較而言,軟件抗干擾技術(shù)設(shè)計靈活、通用性強,在不增加硬件成本情況下,可以大幅度提高系統(tǒng)的工作可靠性,同時使系統(tǒng)具有自我檢測、自我調(diào)整和自我修復(fù)的能力,因而得到越來越廣泛采用。本文針對干擾對單片機的危害進(jìn)行分析,對相關(guān)單片機軟件抗干擾技術(shù)進(jìn)行研究和探討。

        單片機應(yīng)用系統(tǒng)可以認(rèn)為是單片機主機接收傳感器輸入信號、經(jīng)過轉(zhuǎn)換和處理,輸出信號去控制執(zhí)行對象的過程(如圖1 所示)。

        圖1 單片機應(yīng)用系統(tǒng)結(jié)構(gòu)

        各種傳感器信息和控制信號從輸入通道進(jìn)入單片機控制系統(tǒng),系統(tǒng)通過對各種信息的存儲、轉(zhuǎn)換、輸出控制信息,控制電動機等輸出執(zhí)行器件,所以,要針對干擾對單片機系統(tǒng)前向通道、后向通道和中間存儲和控制系統(tǒng)的影響,進(jìn)行軟件抗干擾技術(shù)分析。具體分析如下:

        1 干擾對單片機系統(tǒng)的影響

        1.1 影響單片機系統(tǒng)數(shù)據(jù)采集的準(zhǔn)確性

        干擾能使微弱信號被淹沒在干擾信號中。數(shù)據(jù)采集誤差會導(dǎo)致系統(tǒng)發(fā)生死機、控制失靈甚至錯誤操作。

        1.2 破壞單片機程序數(shù)據(jù)和表格

        在單片機系統(tǒng)中,一些可以修改的程序及表格,如RAM、EEPROM 等存儲器中的數(shù)據(jù)都有可能被修改,使程序運行狀況受到影響,甚至造成系統(tǒng)進(jìn)入死循環(huán)等不可預(yù)計情況。

        1.3 干擾使系統(tǒng)運行失常

        單片機受到干擾時,往往會非正常修改程序計數(shù)器PC指針,或者篡改程序數(shù)據(jù),導(dǎo)致程序胡亂執(zhí)行一些指令,或者出現(xiàn)“跑飛”的情況,甚至出現(xiàn)死循環(huán),使系統(tǒng)的輸出混亂、錯誤或死機。

        1.4 干擾使輸出控制失常

        單片機輸出是以對輸入信息的采集、存儲、分析、處理為基礎(chǔ)的,在前面環(huán)節(jié)受到干擾時,輸出的控制信號也會產(chǎn)生誤差。干擾也可能直接作用在輸出端口,例如改變了輸出電平(例如0 變成1、1 變成0 等)。都會導(dǎo)致輸出控制失常,嚴(yán)重的時候?qū)е驴刂葡到y(tǒng)失靈。

        2 單片機系統(tǒng)軟件抗干擾技術(shù)

        2.1 信號采集通道的軟件抗干擾技術(shù)

        對信號輸入通道的軟件抗干擾措施中,數(shù)字濾波器濾波是抑制信號干擾的一種有效途徑。常用的幾種軟件濾波方法有:算術(shù)平均值法、軟件濾波器濾波法等。

        1)算術(shù)平均值法,對某一個點數(shù)字連續(xù)采樣多次,計算其平均值作為該點采樣結(jié)果。這種方法對抑制隨機干擾有一定效果,但是對某較大脈沖干擾,會拉高其檢測數(shù)值。

        針對以上不足,采用改進(jìn)的防脈沖干擾平均值法,每次取N 個數(shù)據(jù),去除其中的最大值和最小值,而取剩余的N-2個值的平均值作為輸入數(shù)值,這樣可消除由于偶然出現(xiàn)的脈沖干擾所引起的采樣值偏差。不足之處是用程序?qū)?shù)據(jù)進(jìn)行二次處理,會占用較多的內(nèi)存空間和運行時間。

        2)軟件濾波器濾波法

        這種方法是利用軟件的數(shù)據(jù)算法實現(xiàn)信號濾波,根據(jù)采集數(shù)據(jù)特點采用低通、高通或者帶通濾波器,代替硬件實現(xiàn)相應(yīng)濾波功能[1]。

        2.2 數(shù)據(jù)內(nèi)容檢查和修復(fù)的軟件抗干擾技術(shù)

        單片機要實現(xiàn)實時控制,不可避免會涉及到數(shù)據(jù)內(nèi)容的自救和恢復(fù),存儲器數(shù)據(jù)中部分?jǐn)?shù)據(jù)是可以毀壞,一部分是不允許丟失。系統(tǒng)中單片機的1/O 口、內(nèi)部RAM、特殊功能寄存器SFR、外部RAM 等反映系統(tǒng)運行狀態(tài)的重要數(shù)據(jù),這些數(shù)據(jù)的丟失會導(dǎo)致系統(tǒng)運行故障和錯誤,必須進(jìn)行有效保護和恢復(fù)。

        1)系統(tǒng)自檢技術(shù)

        程序自檢是提高測控系統(tǒng)可靠性的有效方法之一。在系統(tǒng)復(fù)位或者系統(tǒng)待機喚醒時,系統(tǒng)對單片機系統(tǒng)內(nèi)部I/O口、特殊功能寄存器SFR、程序狀態(tài)寄存器PSW、定時/中斷設(shè)置的關(guān)鍵信息等進(jìn)行檢測,如出現(xiàn)故障能夠反饋故障信息并報錯處理。自檢程序可避免因外設(shè)等原因而使測控系統(tǒng)不能正常工作的干擾[2]。

        2)數(shù)據(jù)備份

        為了防止主要數(shù)據(jù)在運行時遭到修改或破壞,將程序原始數(shù)據(jù)及運行過程中的關(guān)鍵數(shù)據(jù)在幾個地方同時存放,實現(xiàn)數(shù)據(jù)備份。當(dāng)原數(shù)據(jù)被破壞時,可以調(diào)用備份數(shù)據(jù)進(jìn)行修復(fù)。在建立備份數(shù)據(jù)時,應(yīng)注意以下幾點:一是各備份數(shù)據(jù)間應(yīng)遠(yuǎn)離分散設(shè)置,減少同時被破壞的可能性;二是各備份數(shù)據(jù)應(yīng)盡可能遠(yuǎn)離堆棧區(qū)或數(shù)組區(qū)域,避免由堆棧操作錯誤或數(shù)組讀寫超出邊界引發(fā)數(shù)據(jù)丟失;三是備份的數(shù)據(jù)不得少于兩份,備份越多,可靠性越強;四是要確定備份的時間周期。

        3)設(shè)立檢查的標(biāo)志數(shù)據(jù)

        在RAM 區(qū)合理位置選擇幾個固定單元,在程序運行開始中將其設(shè)置成固定的數(shù)據(jù),如“08H”等,注意這些數(shù)據(jù)不要設(shè)置成全部為0 或者全部為1。程序正常運行時,這些單元的內(nèi)容是不會改變的??梢酝ㄟ^周期性的檢查這些數(shù)據(jù)是否變化來判斷系統(tǒng)是否受到了干擾。一旦發(fā)現(xiàn)有數(shù)據(jù)改變,立刻執(zhí)行數(shù)據(jù)恢復(fù)或者單片機復(fù)位程序[3]。

        2.3 保障程序正常運行的軟件抗干擾技術(shù)

        1)指令冗余技術(shù)

        指令冗余技術(shù)是防止指令出錯、程序“跑飛”的有效方法。單片機在程序執(zhí)行指令過程是先取操作碼,再取操作數(shù)。當(dāng)單片機程序“跑飛”時,程序指針可能在取指令時刻落在操作數(shù)上,則會誤將操作數(shù)當(dāng)作操作碼,或者將操作碼當(dāng)作操作數(shù),從而導(dǎo)致程序出錯。若飛到3 字節(jié)指令,出錯的機率會更大。

        指令冗余技術(shù)是執(zhí)行指令前面加上兩個以上NOP 指令。因NOP 指令是空操作的單字節(jié)指令,這樣即使亂飛程序在執(zhí)行兩個以上NOP 指令后,在執(zhí)行無論是雙字節(jié)或3字節(jié)指令時,其執(zhí)行指令時序都恢復(fù)正常,使程序重新納入正軌。

        另外,在RETI、RET、LJMP、JB、LCALL 及JC 等對系統(tǒng)流向起重要作用的指令前加上兩條NOP,也可將亂飛的程序納入正軌,確保這些重要指令的執(zhí)行。

        需要注意的是一般在1 K 的程序中加入2~3 次冗余指令為宜,太多的冗余指令則會降低程序的運行效率。

        2)軟件陷阱

        程序存儲器中的未使用區(qū)域全部都是充滿1,對MCS-51來說是“MOV R7,A”的單字節(jié)指令,若因信號干擾導(dǎo)致程序“跑飛”到這些非程序存儲空間,就會引起程序執(zhí)行錯誤。軟件陷阱設(shè)計思路是捕獲“跑飛”的程序并且將程序引向“跑飛”處理子程序入口地址。這通常用2 條空操作和無條件跳轉(zhuǎn)指令實現(xiàn),無條件跳轉(zhuǎn)指令指向程序“跑飛”處理子程序的入口地址。其具體實現(xiàn)代碼為:

        NOP

        NOP

        LJMP FLY(FLY 為跑飛程序入口地址)

        對中斷向量區(qū)后、表格區(qū)后、各子程序之間及一頁的末尾處加上軟件陷阱,效果會更好。

        考慮到程序存儲器的容量,一般在1 K 空間設(shè)置2~3個軟件陷阱即可實現(xiàn)有效捕獲[4]。

        3)軟件“看門狗”技術(shù)

        如果“跑飛”的程序落到了臨時構(gòu)成的死循環(huán)中,也就是常說的“死機”時,冗余指令和軟件陷阱都將無能為力了。這通常依靠軟件“看門狗”技術(shù)使程序脫離“死機”狀態(tài)。軟件“看門狗”技術(shù)具體實現(xiàn)是利用單片機系統(tǒng)中定時器不斷檢測程序運行時間,若程序運行周期超過定時器設(shè)定的允許時間,則發(fā)出中斷信號,進(jìn)入中斷處理程序,強迫單片機復(fù)位,重新執(zhí)行程序。

        2.4 保障輸出控制正常的軟件抗干擾技術(shù)

        1)輸出端口數(shù)據(jù)重復(fù)輸出

        輸出端的干擾多為干擾信號疊加在輸出通道上,產(chǎn)生瞬態(tài)脈沖干擾,嚴(yán)重時干擾信號甚至?xí)蜎]正常輸出信號。由于外部脈沖信號的干擾,可能使單片機輸出設(shè)備偶爾會得到一個錯誤的數(shù)據(jù),從而影響輸出控制的準(zhǔn)確性。為避免輸出誤動作發(fā)生最有效的方法就是重復(fù)輸出一個數(shù)據(jù)。在受干擾的信號還沒有影響執(zhí)行設(shè)備時,正確的信息又到來,這樣就可以及時防止誤動作的產(chǎn)生。在程序結(jié)構(gòu)上,可以為輸出數(shù)據(jù)安排一個存儲緩沖區(qū),讓每個設(shè)備不斷重復(fù)得到輸出數(shù)據(jù),從而使干擾造成的錯誤狀態(tài)不能維持,使系統(tǒng)維持正常運行[1]。

        重復(fù)數(shù)據(jù)輸出主要對開關(guān)量數(shù)據(jù)輸出控制有效,但對于輸出變量按照一定規(guī)律變化的控制信號不能采用重復(fù)送數(shù)的方法,可以采用信號對比檢測方法。從設(shè)備的輸出信息中采集反饋數(shù)據(jù),將反饋數(shù)據(jù)與對應(yīng)輸出信號比較,判斷數(shù)據(jù)傳輸是否正確。

        2)設(shè)置硬件與軟件數(shù)據(jù)比較器實現(xiàn)輸出控制

        在單片機硬件系統(tǒng)上設(shè)計輸出狀態(tài)寄存器,在軟件上設(shè)置輸出狀態(tài)存儲單元,在工作中實時比較從硬件與軟件采集的輸出數(shù)據(jù)。當(dāng)干擾侵入后向通道造成輸出狀態(tài)破壞時,系統(tǒng)通過及時查詢、比較硬件輸出狀態(tài)與軟件存儲寄存器輸出狀態(tài)的一致性,來實現(xiàn)對輸出狀態(tài)的判斷和糾錯[5]。

        3 結(jié)束語

        干擾對于單片機的危害是多方面的、多角度的。本文根據(jù)干擾對單片機不同方面的影響和危害,分析其對應(yīng)軟件抗干擾措施。但是,軟件抗干擾是在硬件抗干擾的基礎(chǔ)上的補充和拓展,只有硬件和軟件抗干擾技術(shù)相結(jié)合,完善系統(tǒng)監(jiān)控和糾錯程序,才能有效確保單片機系統(tǒng)能夠長期、穩(wěn)定可靠的運行。

        [1]王偉.軟件抗干擾在單片機控制系統(tǒng)中的應(yīng)用研究[J].機械管理開發(fā),2010,25(3) :203-204.

        [2]李家坤.單片機應(yīng)用系統(tǒng)綜合抗干擾技術(shù)研究[J].微型機與應(yīng)用,2012,31(7) :74-76.

        [3]張金柏,吳曉光,李宇.氬弧焊機控制系統(tǒng)的抗干擾研究[J].武漢科技學(xué)院學(xué)報,2010:39-42.

        [4]張文豐.單片機應(yīng)用的前瞻性抗干擾設(shè)計[J].中國高新技術(shù)產(chǎn)業(yè),2014(18) :21-23.

        [5]吳興純,趙金燕,楊秀蓮,等.單片機運用系統(tǒng)的軟件抗干擾技術(shù)研究與分析[J].電子設(shè)計工程,2011,9(16) :34-37.

        猜你喜歡
        備份指令單片機
        聽我指令:大催眠術(shù)
        “備份”25年:鄧清明圓夢
        基于單片機的SPWM控制逆變器的設(shè)計與實現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于單片機的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機的便捷式LCF測量儀
        電子制作(2019年9期)2019-05-30 09:42:02
        ARINC661顯控指令快速驗證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        電子測試(2018年18期)2018-11-14 02:30:34
        淺析數(shù)據(jù)的備份策略
        科技視界(2015年6期)2015-08-15 00:54:11
        Microchip推出兩個全新PIC單片機系列
        坐標(biāo)系旋轉(zhuǎn)指令數(shù)控編程應(yīng)用
        機電信息(2014年27期)2014-02-27 15:53:56
        亚洲一区二区三区最新视频| 欧美黑人又粗又硬xxxxx喷水| 国产精品成人99一区无码| 欧美伊人亚洲伊人色综| 中文字幕亚洲日本va| 在线免费看91免费版.| 日韩av激情在线观看| 亚洲av无码男人的天堂在线| 国产精品久久久一本精品| 日韩国产一区二区三区在线观看| 日本高清一级二级三级| 国产高清av首播原创麻豆| 亚欧国产女人天堂Av在线播放 | 国精品午夜福利视频不卡| 极品熟妇大蝴蝶20p| 久久成人黄色免费网站| 男女调情视频在线观看| 精品国产性色无码av网站| 两个黑人大战嫩白金发美女| 亚洲红杏AV无码专区首页| 日韩av在线不卡一区二区| 影音先锋色小姐| 夜色阁亚洲一区二区三区| 精品国产成人一区二区不卡在线| 国产免费二区三区视频| 69sex久久精品国产麻豆| 国产午夜精品理论片| 国产在线精彩自拍视频| 午夜天堂一区人妻| 成 人 免费 黄 色 视频| 白白色免费视频一区二区| 国产女人乱码一区二区三区| 久久久久夜夜夜精品国产 | 国产亚洲精品自在久久77| 美女一区二区三区在线视频| 亚洲av无码一区二区三区网址| 中文字幕美人妻亅u乚一596| 国产精品一区区三区六区t区| 蜜桃av噜噜一区二区三区9| 人妻无码αv中文字幕久久琪琪布| 人妻无码在线免费|