单片机应用系统的抗干扰方法_第1页
单片机应用系统的抗干扰方法_第2页
单片机应用系统的抗干扰方法_第3页
单片机应用系统的抗干扰方法_第4页
单片机应用系统的抗干扰方法_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机应用系统的抗干扰方法要消退单片机应用系统的干扰,只要去掉干扰形成的三个基本条件(干扰源、传播路径、敏感器件)之一即可,内部的干扰源可以通过合理的电气设计在肯定程度上予以消退,外部干扰源则实行屏蔽、接地、隔离等措施予以消退或切断。抗干扰设计的主要工作是围绕这一部分绽开的,上述三个部分也不是肯定划分的,通常一个系统的抗干扰措施是多方面的综合以达到最佳的效果。

在实践中,单片机应用系统的抗干扰设计一般是通过硬件抗干扰设计和软件抗干扰设计两种途径来实现的。硬件假如设计得当,就可以将绝大部分干扰拒之门外,但仍旧会有少量干扰,所以软件措施必不行少。由于软件措施是以占用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-DogTimer),也称“看门狗”技术,用于设立软件陷阱失效的状况下,让系统从故障中恢复过来。由于因干扰而失控的程序不肯定都会掉到陷阱中去,比如程序的死循环就是如此。所谓死循环,就是由于某种缘由使程序陷入某个应用程序或中断服务子程序中做无休止的循环。这样,CPU及其他系统资源被其占用而别的任务程序都无法执行。也就是说,死循环使程序失去正常掌握,但它不会使程序掌握转入陷阱区,因而软件陷阱无法捕获它。

时间监视器由两个计数器组成,计数器靠系统时钟(或分频后的脉冲信号)进行计数。当计数器记满时,将由计数器产生一个复位信号,强迫系统复位,使系统重新执行程序。在正常状况下,每隔肯定的时间(依据系统应用程序执行的长短来确定),程序使计数器清零。这样,计数器就不会记满,因而不会产生复位。

图2SPCE061A看门狗结构与时序

例如,凌阳单片机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将进行系统复位操作,即平常我们说的重启系统。看门狗常常用于延时程序中,如

voidDelay()

{

unsignedintj;

for(j=0x7fff;j0;j--);

*P_Watchdog_Clear=0x0001;//清看门狗

}

④加入空操作NOP

在ROM或RAM的若干区域内,存放若干个空操作组,空操作的个数等于所选CPU芯片最长指令节数。空操作指令NOP除了占用一个存储单元和执行时间外,对CPU的工作状态没有影响。如有选择地在程序某地方插进1~2个NOP指令,也能使PC中的内容得到调整,使程序在受到干扰后回到正确的挨次。插入的位置要在程序调试过程中摸索、分析和试验。一般来说,在对外设端口的操作指令、多字节指令、转移指令、堆栈操作指令前插入NOP指令会得到好的效果。此外,还可以在空操作组之后,再增加处理跑飞的程序,而且让CPU在执行正常程序时,不执行这些指令组。只有当跑飞时才有可能遇到这些指令组。例如:

NOP

NOP

NOP

LJMPFF

FF:ACALLFLY

MOVA,FLG

CJNEA,#11H,RSM

……

⑤分段式软件抗干扰

某些时候,掌握系统要挨次执行几个不同的主循环通道以完成不同的功能。这时可在不同主环路内编制抗干扰判别及自恢复功能。这样做可以避开不必要的重复执行,以保证挨次的完整性。

⑥数字滤波

数字滤波是通过程序设计对单片机数据采集部分输入的信号进行加工处理,以达到抗干扰的目的。当干扰叠加输入通道的模拟信号时,使数据采集误差加大,特殊当输入通道模拟信号较弱时,此现象更加严峻。为了消退数据采集的误差,常用算术平均法、比较取舍法、一阶滞后滤波法和中值法,可依据信号和干扰的规律,采纳最优

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论