DIY编程器网

标题: 单片机系统应用中的抗干扰措施 [打印本页]

作者: liyf    时间: 2012-1-16 17:27
标题: 单片机系统应用中的抗干扰措施

                      针对单片机系统应用中的干扰问题,介绍了几种抗干扰措施,从而有效地提高了单片机系统运行可靠性。
  工业生产中的干扰一般都以脉冲形式进入微机,干扰窜入系统的渠道主要有三条,即供电系统;过程通道;空间磁场。
  通常防护措施如下:
  (1)供电系统
  在微机系统中,最严重的干扰来源为电源的污染。为了防止从电源系统引入的干扰,一是要将微机的供电与大功率的用电设备的电源分开,最好单独供电;二是在单片机系统电源变压器的初级串接一低通滤波器(如图1所示),有效阻止高次谐波串入系统,改善电源波形,提高单片机系统的抗干扰能力。






  (1)按下“复位”键引起系统复位。由于在按下“复位”键的同时,将图2的D触发器Q端置“1”,初始化程序检查结果为硬件标志无效而软件标志有效,系统是正常复位,程序转向热启动。
  (2)由于“看门狗”引起的系统复位。初始化程序检查结果为硬件标志有效(图2的D触发器Q端保持为“0”),系统是异常复位。初始化程序将转向异常处理程序。
  由此可见,微机系统能够准确的判断出引起复位的原因,从而采取相应的处理程序,有效地提高了系统的可靠性。  
  在工业控制装置中,有一些重要的数据,像从键盘输入的控制目标值,P、I、D调节参数以及从上位机传送来的各种指令等,必须妥善保存。由于失控的程序常常非法进行写操作,使RAM区中重要的信息丢失。当微机系统重新启动后,必须正确恢复重要参数。因此,单片机系统设计中加入一片串行E2PROM芯片93C46。每次单片机系统设置完成后,程序自动将重要参数写入93C46。由于93C46具有上电禁写和软件禁写功能,因而数据保存可靠。
  3.1使用空操作指令
  MCS-51指令系统中有部分双字节和三字节指令,当程序弹飞落到这些指令的操作数上时,将把操作数当成指令,产生错误的结果。因而,在程序中重要的地方(如跳转、调子程序)等插入两条空操作指令,可拦截弹飞的程序并转入正常。






  3.2建立软件陷阱
  所谓“软件陷阱”就是在程序中加入的一组用于拦截弹飞程序的程序段。它强行将程序转向一个特定的地址,该地址放有出错处理程序。如果将出错处理程序的入口标号命名为“ERR”的话,通常软件陷阱由以下三句话组成:
  一旦弹飞的程序被拦截,立刻转向错误处理程序。
  3.3出错处理程序
  错误处理程序的共同点是先关闭中断,防止事态扩大。对于有“看门狗”电路的系统来讲,等待复位即可。而软件复位和硬件“看门狗”复位不同。此时CPU片内的寄存器和I/O口状态是不定的。所以错误处理程序在转向程序起点前,要将CPU片内的各寄存器、已激活的中断标志和I/O口“软件”复位,进入初始状态,再转入程序起点。
  3.4其他措施
  在用单片机组成的控制系统中,调节量的输出是不断变化的。单片机系统受到干扰而异常复位后,RAM区中的标志单元、输出量缓冲单元和I/O口的状态都可能改变,不能作为系统复位后的状态恢复数据。这时可以手动给定量作为当前控制器输出量。这些措施可有效的减少单片机异常复位后对整个系统带来的扰动。
  微机系统抗干扰设计是一项综合性设计,采用硬件措施可有效提高微机控制系统的抗干扰能力,但过多的硬件本身就降低了系统的可靠性。因而系统的设计要“软”“硬”兼施,提高系统的防护和容错能力,从而提高单片机系统的可靠性。
            




欢迎光临 DIY编程器网 (http://diybcq.com/) Powered by Discuz! X3.2