DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 135|回复: 0
打印 上一主题 下一主题

单片机系统应用中的抗干扰措施

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-16 17:27:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

                      针对单片机系统应用中的干扰问题,介绍了几种抗干扰措施,从而有效地提高了单片机系统运行可靠性。
  工业生产中的干扰一般都以脉冲形式进入微机,干扰窜入系统的渠道主要有三条,即供电系统;过程通道;空间磁场。
  通常防护措施如下:
  (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口的状态都可能改变,不能作为系统复位后的状态恢复数据。这时可以手动给定量作为当前控制器输出量。这些措施可有效的减少单片机异常复位后对整个系统带来的扰动。
  微机系统抗干扰设计是一项综合性设计,采用硬件措施可有效提高微机控制系统的抗干扰能力,但过多的硬件本身就降低了系统的可靠性。因而系统的设计要“软”“硬”兼施,提高系统的防护和容错能力,从而提高单片机系统的可靠性。
            
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-11-6 19:56 , 耗时 0.174247 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表