999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

51單片機(jī)應(yīng)用系統(tǒng)軟件抗干擾初探

2016-05-14 12:58:44王芳
青春歲月 2016年8期
關(guān)鍵詞:單片機(jī)

【摘要】在提高單片機(jī)硬件系統(tǒng)抗干擾能力的同時(shí),軟件抗干擾以其設(shè)計(jì)靈活、節(jié)省硬件資源、可靠性好等特點(diǎn),越來越受到設(shè)計(jì)者的重視,本文主要從實(shí)際應(yīng)用的角度闡述單片機(jī)系統(tǒng)軟件抗干擾的具體實(shí)現(xiàn)方法。

【關(guān)鍵詞】單片機(jī);軟件;看門狗;抗干擾;指令集

隨著單片機(jī)在各個(gè)領(lǐng)域應(yīng)用愈來愈廣泛,單片機(jī)應(yīng)用系統(tǒng)的可靠性越來越成為人們關(guān)注的一個(gè)重要課題。由于51系列單片機(jī)的指令系統(tǒng)是復(fù)雜指令集結(jié)構(gòu),致使其抗干擾性能不高,尤其用在工業(yè)控制的場(chǎng)合,不增加額外的抗干擾措施,甚至無法正常工作。要提高單片機(jī)系統(tǒng)的抗干擾性能無非是從硬件和軟件兩個(gè)方面加以考慮。硬件系統(tǒng)是單片機(jī)系統(tǒng)穩(wěn)定工作的根本,經(jīng)常采用的方法有:改善系統(tǒng)的布局、布線;提高強(qiáng)電與弱電的隔離度;增加濾波器;增加“硬件看門狗”等等,成本高;而軟件抗干擾在不增加系統(tǒng)復(fù)雜性,不提高成本,也可以提高系統(tǒng)的穩(wěn)定性。51系列單片機(jī)的指令包括單字節(jié)、雙字節(jié)和三字節(jié)指令,雙字節(jié)和三字節(jié)指令包含操作碼和操作數(shù)兩部分。當(dāng)單片機(jī)受到嚴(yán)重干擾時(shí),程序計(jì)數(shù)器PC因干擾而改變,程序便脫離正常軌道“亂飛”,如果“飛”到單字節(jié)指令或雙字節(jié)、三字節(jié)指令的操作碼上,稱這種“跑飛”為“第一類跑飛”。當(dāng)“飛”到某雙字節(jié)或三字節(jié)指令的操作數(shù)上,誤將操作數(shù)當(dāng)作操作碼執(zhí)行,出現(xiàn)嚴(yán)重錯(cuò)誤,稱這種“跑飛”為“第二類跑飛”。無論是前一種情況還是后一種情況,“跑飛”的程序執(zhí)行結(jié)果將是無法預(yù)料的。

一、單片機(jī)軟件抗干擾設(shè)計(jì)的主要方法

軟件抗干擾設(shè)計(jì)的主要目的就是及時(shí)發(fā)現(xiàn)程序的“跑飛”,并及時(shí)地將程序拉入正常軌道,主要方法有:指令冗余、軟件“看門狗”、軟件“陷阱”、程序“跑飛”攔截等等。

1、指令冗余

CPU取指令過程是先取操作碼,再取操作數(shù)。在程序的關(guān)鍵地方人為的插入一些單字節(jié)指令,或?qū)⒂行巫止?jié)指令重寫稱為指令冗余,通常是在雙字節(jié)指令和三字節(jié)指令后插入兩個(gè)字節(jié)以上的NOP指令。此外,對(duì)系統(tǒng)流向起重要作用的指令,如RET、RETI、LCALL、LJMP、JC等,可以在這些指令之前插入兩條NOP指令,可將跑飛程序納入正軌,以確保這些重要指令的執(zhí)行。指令冗余只能使CPU不再將操作數(shù)當(dāng)作操作碼錯(cuò)誤地執(zhí)行,卻不能主動(dòng)地將程序的錯(cuò)誤執(zhí)行方向扭轉(zhuǎn)過來,要想糾正程序的錯(cuò)誤執(zhí)行方向,就需要下面的技術(shù)。

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

跑飛的程序在執(zhí)行一些錯(cuò)誤操作之后,經(jīng)常會(huì)進(jìn)入“死循環(huán)”,也就是常說的“死機(jī)”。通常采用“看門狗”技術(shù)使程序脫離“死循環(huán)”,“看門狗”技術(shù)可由硬件實(shí)現(xiàn),也可由軟件實(shí)現(xiàn)。在工業(yè)應(yīng)用中,嚴(yán)重的干擾有時(shí)會(huì)破壞中斷方式控制字,關(guān)閉中斷,造成看門狗失效,這時(shí)可以采用環(huán)形中斷監(jiān)視系統(tǒng)。用定時(shí)器T0監(jiān)視定時(shí)器T1,用定時(shí)器T1監(jiān)視主程序,主程序監(jiān)視定時(shí)器T0。采用這種環(huán)形結(jié)構(gòu)的軟件“看門狗”具有良好的抗干擾性能,大大提高了系統(tǒng)可靠性。

軟件“看門狗”技術(shù)需要使用定時(shí)器,而在大多數(shù)的控制程序中,定時(shí)器都是緊俏的資源,這就使軟件“看門狗”技術(shù)的實(shí)際應(yīng)用受到了限制,可以采取一些技巧性的處理,將軟件“看門狗”程序與其它定時(shí)程序復(fù)用同一個(gè)定時(shí)器,這樣既完成定時(shí)功能又完成軟件“看門狗”的功能。

3、軟件“陷阱”

通常在程序存儲(chǔ)器中未使用的EPROM空間填入空操作指令NOP(00H),最后再填入一條跳轉(zhuǎn)指令,跳轉(zhuǎn)到跑飛處理程序,或者直接填入指令LJMP 0000H (020000),當(dāng)跑飛程序落到此區(qū),即可在執(zhí)行一段空操作后轉(zhuǎn)入正軌。

軟件陷阱的一般結(jié)構(gòu)為:

NOP

NOP

LJMP FLY;FLY為跑飛處理程序。

如果程序正常執(zhí)行,軟件陷阱部分是永遠(yuǎn)也執(zhí)行不到的,只有在程序跑飛到陷阱里,軟件陷阱會(huì)立刻將程序跳轉(zhuǎn)到正常軌道。

除了程序存儲(chǔ)器的空白區(qū),程序的數(shù)據(jù)表結(jié)尾也應(yīng)該設(shè)置軟件陷阱,如果數(shù)據(jù)表比較大,應(yīng)該在數(shù)據(jù)表的中間也設(shè)置軟件陷阱,以保證程序跑飛到數(shù)據(jù)區(qū)能及時(shí)轉(zhuǎn)入正軌。當(dāng)使用的中斷因干擾而開放時(shí),在對(duì)應(yīng)的中斷服務(wù)程序中設(shè)置軟件陷阱,能及時(shí)捕獲錯(cuò)誤的中斷。如某應(yīng)用系統(tǒng)雖未用到外部中斷1,外部中斷1的中斷服務(wù)程序可為如下形式:

NOP

NOP

RETI

返回指令可用“RETI”,也可用“LJMP FLY”,用“LJMP FLY”作返回指令可直接進(jìn)入故障診斷程序,盡早地處理故障并恢復(fù)程序的運(yùn)行。軟件陷阱的數(shù)量要根據(jù)實(shí)際受到干擾的情況和程序存貯器的容量來確定。

4、設(shè)置程序運(yùn)行標(biāo)志,攔截“跑飛”程序

單片機(jī)程序的結(jié)構(gòu)一般都是由一個(gè)上電復(fù)位初始化程序、一個(gè)主程序、幾個(gè)中斷服務(wù)程序和若干子程序組成的,51系列單片機(jī)的RAM區(qū)中有一個(gè)位尋址區(qū),可以在位尋址區(qū)中設(shè)立一些標(biāo)志位,這些標(biāo)志位分別代表不同的程序模塊,一個(gè)字節(jié)可以對(duì)應(yīng)8個(gè)程序模塊。舉一個(gè)簡(jiǎn)單的例子來說明攔截“跑飛”程序的應(yīng)用,在調(diào)用每一個(gè)子程序的開始將自己的標(biāo)志位置1,在子程序的結(jié)尾進(jìn)行檢查,如果自己的標(biāo)志位是1,說明程序執(zhí)行正常,否則程序就出現(xiàn)了“跑飛”,在退出該子程序之前,將其對(duì)應(yīng)標(biāo)志位清零。

如果程序模塊比較多,位尋址區(qū)不夠使用,可以給不同的模塊分配不同的代碼,在RAM區(qū)選擇一個(gè)特殊字節(jié)作為運(yùn)行標(biāo)志,當(dāng)某個(gè)程序模塊正在執(zhí)行時(shí),將該特殊字節(jié)賦值為該模塊的代碼,這樣一個(gè)RAM字節(jié)就可以對(duì)應(yīng)256個(gè)程序模塊。

二、經(jīng)常用到的其它提高單片機(jī)系統(tǒng)抗干擾性能的方法

1、檢查RAM區(qū)標(biāo)志數(shù)據(jù),及時(shí)發(fā)現(xiàn)嚴(yán)重干擾

這種方法是在RAM區(qū)中選擇幾個(gè)固定單元,在初始化程序中將其設(shè)置成固定的數(shù)據(jù),如“55H”或“0AAH”等,只要程序正常運(yùn)行,這些單元的內(nèi)容是不會(huì)改變的。如果因?yàn)槌绦颉芭茱w”或其它干擾導(dǎo)致這些RAM單元中的任何單元的數(shù)據(jù)發(fā)生了變化,說明單片機(jī)系統(tǒng)已經(jīng)受到了嚴(yán)重的干擾,不能可靠地運(yùn)行下去了。適時(shí)地檢查RAM單元的內(nèi)容,發(fā)現(xiàn)有數(shù)據(jù)改變,立刻執(zhí)行LJMP0000H語句,強(qiáng)制單片機(jī)復(fù)位。

2、刷新輸出端口,排除嚴(yán)重干擾

當(dāng)單片機(jī)系統(tǒng)受到嚴(yán)重干擾時(shí),輸出端口的狀態(tài)也可能因干擾而改變,在程序的執(zhí)行過程中適時(shí)地根據(jù)相關(guān)程序模塊的運(yùn)算結(jié)果刷新輸出端口,可以排除干擾對(duì)輸出端口狀態(tài)的影響,使錯(cuò)誤的輸出狀態(tài)及時(shí)得到糾正。

3、輸入多次采樣,避免嚴(yán)重干擾

強(qiáng)烈的干擾會(huì)影響單片機(jī)的輸入信號(hào),造成輸入信號(hào)瞬間采樣的誤差或誤讀,要避免干擾的影響,通常采取重復(fù)采樣、加權(quán)平均的方法。

4、結(jié)束語

軟件運(yùn)行過程中受到的干擾是不確定的,軟件抗干擾屬于微機(jī)系統(tǒng)的自身防御行為,以上所提到的軟件抗干擾的方法,都不是單獨(dú)使用的,只有根據(jù)實(shí)際情況將這些方法有效地結(jié)合起來,并與硬件抗干擾措施一起使用,才能達(dá)到最佳抗干擾效果,使單片機(jī)系統(tǒng)穩(wěn)定可靠地工作。

【參考文獻(xiàn)】

[1] 胡漢才. 單片機(jī)原理及其接口技術(shù). 北京:清華大學(xué)出版社, 2005.

[2] 戴梅萼. 微型計(jì)算機(jī)及其應(yīng)用. 北京:清華大學(xué)出版社, 2000.

【作者簡(jiǎn)介】

王芳(1981—),女,漢族,內(nèi)蒙包頭人,碩士學(xué)位,包頭輕工職業(yè)技術(shù)學(xué)院講師,主要研究方向:計(jì)算機(jī)科技。

猜你喜歡
單片機(jī)
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的多功能智能插排
電子制作(2019年11期)2019-07-04 00:34:48
基于單片機(jī)的便捷式LCF測(cè)量?jī)x
電子制作(2019年9期)2019-05-30 09:42:02
小議PLC與單片機(jī)之間的串行通信及應(yīng)用
電子制作(2018年12期)2018-08-01 00:48:04
MSP430單片機(jī)在仿真中要注意的幾點(diǎn)問題
電子制作(2017年9期)2017-04-17 03:00:53
基于單片機(jī)的平衡控制系統(tǒng)設(shè)計(jì)
電子制作(2017年19期)2017-02-02 07:08:27
基于單片機(jī)的三維LED點(diǎn)陣設(shè)計(jì)
電子制作(2016年21期)2016-05-17 03:52:51
Microchip推出兩個(gè)全新PIC單片機(jī)系列
基于Proteus的單片機(jī)控制系統(tǒng)的仿真設(shè)計(jì)
主站蜘蛛池模板: 一级毛片高清| 日韩高清欧美| 国产精品网曝门免费视频| 国产精品成人不卡在线观看| 秋霞一区二区三区| 91青草视频| 国产精品99久久久| 日韩国产另类| 国产成人91精品| 人人爽人人爽人人片| 一级全免费视频播放| 嫩草国产在线| 亚洲系列无码专区偷窥无码| 在线毛片免费| 久久激情影院| 国产又大又粗又猛又爽的视频| 亚洲AV电影不卡在线观看| 亚洲欧美日韩成人在线| 日本道综合一本久久久88| 天天操精品| 久久精品嫩草研究院| 欧美曰批视频免费播放免费| 天天摸夜夜操| 亚洲va在线∨a天堂va欧美va| 成人午夜福利视频| 麻豆a级片| 久久这里只有精品23| 国产免费好大好硬视频| 免费大黄网站在线观看| 人妻精品久久无码区| 免费在线a视频| 欧美成一级| 国产日韩久久久久无码精品| 国产毛片高清一级国语 | 国产精品无码一二三视频| 99视频在线看| 色综合天天娱乐综合网| 久久99久久无码毛片一区二区| 久久久久人妻一区精品| 国产无码制服丝袜| 网久久综合| 成人福利在线看| 亚洲欧美成人| 国产亚洲欧美在线视频| 一本大道在线一本久道| 国产精品青青| 午夜欧美在线| 波多野结衣中文字幕一区二区 | 国产av一码二码三码无码| 国产成人三级| 911亚洲精品| 黄网站欧美内射| 在线欧美日韩国产| 国产欧美综合在线观看第七页| 91 九色视频丝袜| 久久国语对白| 日本亚洲欧美在线| 精品91自产拍在线| 久久精品娱乐亚洲领先| 91精品国产自产在线老师啪l| 一本大道香蕉中文日本不卡高清二区| 久久女人网| 亚洲第一网站男人都懂| 最近最新中文字幕在线第一页| 奇米影视狠狠精品7777| 国产午夜精品鲁丝片| 99中文字幕亚洲一区二区| 一级黄色片网| 免费无码又爽又刺激高| 亚洲成人动漫在线| 欧美日韩国产成人在线观看| 麻豆精品在线视频| 日韩人妻精品一区| 日韩国产亚洲一区二区在线观看| 久久情精品国产品免费| 成年A级毛片| 伊人色综合久久天天| 2019国产在线| 欧美区一区| 国产91无码福利在线| 午夜爽爽视频| 亚洲天堂精品在线观看|