电工技术基础_电工基础知识_电工之家-电工学习网

欢迎来到电工学习网!

单片机运用体系的抗搅扰办法

2017-03-25 23:28分类:PLC基础知识 阅读:

  要消除单片机运用体系的搅扰,只需去掉搅扰构成的三个底子条件(搅扰源、传达路径、活络器材)之一即可,内部的搅扰源能够经过合理的电气计划在必定程度上予以消除,外部搅扰源则采纳屏蔽、接地、阻隔等办法予以消除或堵截。抗搅扰计划的首要作业是环绕这一有些翻开的,上述三个有些也不是必定差异的,一般一单个系的抗搅扰办法是多方面的归纳以抵达最佳的作用。
在实习中,单片机运用体系的抗搅扰计划一般是经过硬件抗搅扰计划和软件抗搅扰计划两种路径来完毕的。硬件假定计划妥当,就能够将绝大有些搅扰拒之门外,但依然会有少数搅扰,所以软件办法必不行少。由于软件办法是以占用CPU为价值的,假定没有硬件消除绝大有些搅扰,CPU将疲于奔命,严峻影响体系的作业功率和实时性。因此一个抗搅扰性杰出的单片机运用体系则是由硬件计划和软件开发相得益彰而构成。
1.硬件抗搅扰计划
① 电源电路
单片机体系运用的电源,一般都是由电网的工频沟通电源经降压、整流、滤波等环节后供应。由于电网的影响以及出产现场大容量电气设备的开停,会使沟通电压中富含高频成分、浪涌电压、尖峰脉冲或许发作较大崎岖的电压不坚定。这些要素都将致使搅扰经过电源路径影响体系的正常作业。电源做得好,悉数电路的抗搅扰作业就完毕了一大半。很多单片机对电源噪声很活络,因此,应选用抗搅扰的开关电源或给单片机电源加滤波电路或稳压器,以削减电源噪声对单片机的搅扰。电源线的安置除了要依据电流的巨细,尽量加租导体宽度外,还要使电源线、地线的走向与数据传递的方向一同。这将有助于增强抗噪声的才华。每品种型的单片机都有一个安稳作业的电压计划,例如凌阳SPCE061A单片机作业电压为3.3V~5V ,超出这个计划将呈现反常。
② 硬件复位电路


图1 选用MAX6827的复位电路
复位电路是最简略受搅扰的(由于CPU 内部的复位电路的阻抗都比照高,为10~50kΩ) ,影响也是最大的。因此,有必要采纳抗搅扰办法。图1是选用MAX6827的复位及“看门狗”电路图。该电路具有较强的抗搅扰才华,由于没有复位电容,不易引进搅扰。
③ 留心印制电路板的布线
打印电路板是单片机体系中器材、信号线、电源线的高密度调团体,打印电路板计划的好坏对体系的抗搅扰才华影响很大。故在打印电路板计划不单是器材、线路的简略计划组织,还有必要契合抗搅扰计划准则。合理计划体系电路板,能有用地堵截搅扰的传达路径和按捺搅扰源,一同还可早年进活络元件(如单片机、数字IC、A/ D、D/ A 等简略被搅扰的方针) 的抗搅扰才华。首要采纳:
[1] 电路板合理分区,如强、弱信号,数字、模仿信号分区。尽或许使搅扰源(如电机,继电器) 远离活络元件。大功率器材尽量安置在电路板的边际。
[2] 布线时尽量削减回路环的面积,以下降感应噪声;电源线和地线要尽量粗,除减小压降外,更首要的是下降耦合噪声;联接线避免90度的折线,以削减高频噪声发射。
[3] 不必的单片机管脚,分外是接连的进口,不要悬空,一般要经过上拉电阻接电源。
[4] 电路板上每个IC 要并接一个0.01μF~0.1μF高频电容,以削减IC对电源的影响。
[5] 留心晶振布线。晶振与单片机引脚尽量挨近,用地线把时钟区阻隔(圈) 起来,晶振外壳接地并固定。此办法可处理很多疑难疑问。
[6] 用地线把数字区与模仿区阻隔,数字地与模仿地要别离,终究接于电源地一点集结,呈“星形”状。
在单片机运用体系中,接地是按捺搅扰的首要办法。接地是不是精确,接地是不是强健,将直接影响到体系的正常作业。如能将接地和屏蔽精确联络起来运用,能够处理大大都的搅扰疑问。
为了避免体系内部地线搅扰,在计划打印电路板时可采纳如下办法:接地线尽量加粗。若接地线很细,接地电位则跟着电流的改动而改动,致使核算机的守时信号电平不稳,抗噪声功用变差。因此要依据经过电流的巨细抉择地线的宽度,应在或许的状况下,尽量将接地线条加粗、加宽,最佳不小于3mm,使它能经过3倍于打印电路板上的容许电流。关于多级电路,计划时要思考各级动态电流,留心接地阻抗彼此耦合的影响,作业频率低于1MHz 时选用一点接地,作业频率较高时采纳多点接地。
2.软件抗搅扰计划
在单片机运用体系中,尽管采纳了硬件抗搅扰办法,但由于搅扰信号发作的要素十分凌乱,且有很大的随机性,因此在采纳硬件抗搅扰办法的根底上,采纳软件办法加以抵偿。现简明介绍如下几种软件抗搅扰办法。
① 树立软件圈套(Trap)
单片机遭到搅扰时,程序计数器PC值最简略受影响,PC值的改动是随机的,完万能够构成CPU脱离精确的指令次第去施行一些无界说地址中的内容,或进入数据区,把数据当作操作码来操控,使悉数作业失调,体系失控。这种状况对体系来说,比某个数据犯错构成的损害要严峻得多。后者只触及某个功用不能完毕或许发作过错,而前者则会使悉数体系构成瘫痪。构成程序失控的要素并非程序计划自身的疑问,而是由于外部的搅扰或单片机内部硬件刹那间缺陷,使得程序计数器(PC)违背了原定的值。例如,当施行完一条指令时,程序计数器PC应加数值1,但由于某种要素,使PC实习加2,这么,程序就会把操作数和操作码混杂起来,构成后边一系列的过错。
为了避免上述状况的发作,在软件计划时,能够选用树立软件圈套的办法加以打败。其详细做法是,在ROM或RAM中,每隔一些指令(如十条或二十条),把接连的几个单元置成“00”(空操作)。这么,当呈现程序失控时只需失控的单片机进入这很多的软件圈套中任何一个,都会被捕获,接连进行几个空操作。施行这些空操作后,程序主动康复正常,持续施行后边的程序。这种办法虽糟蹋一些内存单元,但能够确保程序不会跑飞。这种办法对用户是不通明的,亦即用户底子感触不到程序是不是发作过错操作。
② 拓荒多个存储区抗搅扰
为了避免RAM犯错,扔掉最首要的数据,关于首要的输入输出数据拓荒2~3个存储区一同保留。存取数据时,采纳比照表决法,以使数据去伪存真。
③ 时刻监督器
时刻监督器(Watch-Dog Timer),也称“看门狗”技能,用于树立软件圈套失效的状况下,让体系从缺陷中康复过来。由于因搅扰而失控的程序不必定都会掉到圈套中去,比方程序的死循环即是如此。所谓死循环,即是由于某种要素使程序堕入某个运用程序或接连效劳子程序中做无休止的循环。这么,CPU及别的体系本钱被其占用而别的使命程序都无法施行。也即是说,死循环使程序失掉正常操控,但它不会使程序操控转入圈套区,因此软件圈套无法捕捉它。
时刻监督器由两个计数器构成,计数器靠体系时钟(或分频后的脉冲信号)进行计数。当计数器记满时,将由计数器发作一个复位信号,逼迫体系复位,使体系从头施行程序。在正常状况下,每隔必定的时刻(依据体系运用程序施行的长短来断定),程序使计数器清零。这么,计数器就不会记满,因此不会发作复位。


图2 SPCE061A 看门狗构造与时序
例如,凌阳单片机SPCE061A的WatchDog的铲除时刻周期为0.75s。由于WatchDog的溢出复位信号WatchDog_Reset是由4Hz时基信号经4分频往后发作的,即每4个4Hz时基信号(1s)将会发作一个WatchDog_Reset信号。而铲除WatchDog的WatchDog_Clear信号却能够发作在4Hz信号(0.25s)之间的恣意一个时刻点上。假定WatchDog_Clear信号发作在4Hz信号尾端的0.01s即第0.25s时刻,此刻尽管WatchDog被铲除去,但由于它发作在4Hz信号往后,再经3个4Hz信号即0.75s,假定一向没有WatchDog_Clear信号,便会发作出一个WatchDog_Reset信号。如图2所示,假定程序作业不正常,例如堕入死循环等,计数器将记满而发作溢出此溢出信号用来发作复位信号,使程序从头开端主张。在编程中,咱们只需将0X0001H写入P_WatchDog_Clear单元即可完毕铲除WatchDog操作,假定在0.75秒内没有将0X0001H写入P_WatchDog_Clear单元,则CPU将进行体系复位操作,即往常咱们说的重启体系。看门狗常常用于延时程序中,如
void Delay()
{
unsigned int j;
for(j=0x7fff;j>0;j--);
*P_Watchdog_Clear = 0x0001;//清看门狗
}
④ 参加空操作NOP
在ROM或RAM的若干区域内,寄存若干个空操作组,空操作的个数等于所选CPU芯片最长指令节数。空操作指令NOP除了占用一个存储单元和施行时刻外,对CPU的作业状况没有影响。如有挑选地在程序某本地插进1~2个NOP指令,也能使PC中的内容得到调整,使程序在遭到搅扰后回到精确的次第。刺进的方位要在程序调试进程中探究、剖析和实验。一般来说,在对外设端口的操作指令、多字节指令、搬运指令、仓库操作指令前刺进NOP指令会得到好的作用。此外,还能够在空操作组往后,再添加处理跑飞的程序,并且让CPU在施行正常程序时,不施行这些指令组。只需当跑飞时才有或许遇到这些指令组。例如:
NOP
NOP
NOP
LJMP FF
FF:ACALL FLY
MOV A,FLG
CJNE A,#11H,RSM
……
⑤ 分段式软件抗搅扰
某些时分,操控体系要次第施行几个纷歧样的主循环通道以完毕纷歧样的功用。这时可在纷歧样主环路内编制抗搅扰差异及自康复功用。这么做能够避免不必要的重复施行,以确保次第的无缺性。
⑥ 数字滤波
数字滤波是经进程序计划对单片机数据搜集有些输入的信号进行加工处理,以抵达抗搅扰的意图。当搅扰叠加输入通道的模仿信号时,使数据搜集过错加大,分外当输入通道模仿信号较弱时,此景象愈加严峻。为了消除数据搜集的过错,常用算术均匀法、比照取舍法、一阶滞后滤波法和中值法,可依据信号和搅扰的规矩,选用最优的计划办法。
纷歧样的单片机运用体系都有自个的体系恳求和特征,在硬件和软件抗搅扰计划上也各有自个的特征。软件抗搅扰技能作为硬件抗搅扰的抵偿,以其活络性、有用性和牢靠性在单片机运用体系抗搅扰方面起着无足轻重的作用。在工程实习中一般都是几种抗搅扰技能并用,彼此抵偿,才华获得杰出的抗搅扰作用。咱们在计划单片机运用体系时,要细心剖析搅扰源,软硬件抗搅扰技能相联络,完善体系监控程序,则能够确保体系精确、牢靠地作业。

上一篇:单片机中晶振的效果

下一篇:PIC单片机开发进程中软、硬件方案一些阅历、诀窍

相关推荐

电工推荐

    电工技术基础_电工基础知识_电工之家-电工学习网
返回顶部