欢迎来到天天文库
浏览记录
ID:21688899
大小:54.00 KB
页数:5页
时间:2018-10-23
《单片微机系统的抗干扰技术研究》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、单片微机系统的抗干扰技术研究:随着单片微机的日益普及,应用领域的不断扩大,其抗干扰技术越来越受到系统设计人员的重视。该文以intel8031cpu为例,从硬件、软件两方面叙述了一些常用的抗干扰技术。 关键词:单片机;硬件;软件;抗干扰 :TP311:A:1009-3044(2011)20-4996-02 单片微机已经广泛应用于工业控制、仪表、通讯及军事装备等众多领域。由于其应用、环境的差异,受到的干扰也各不相同。总的说来,对微机系统的干扰主要来自以下几个方面: 1)电X的电源干扰 工业控制领域,大型电机的开、关,电焊及各种电火花都可能引起对微机系统的干扰。 2)
2、信号通道的干扰 数据采集及实时控制系统中,对模拟量的输入、输出是必不可少的,输入通道及被控对象都可能产生干扰。 3)空间的辐射干扰 某些应用场合,如发射机、中频炉等周围,微机系统常常会受到辐射的干扰。 4)地线干扰 系统不合理接地,对微机系统也会造成干扰。 当然,也有一些其它的原因产生的干扰。不论何种原因产生的干扰,其最终的表现形式都会造成微机系统的“死机”,控制紊乱。下面以intel8031cpu为例,说明硬件、软件的抗干扰方式及其原理。 1硬件抗干扰措施 对不同的干扰采用不同的抗干扰方法,如在设备的前端加上带屏蔽罩的低通滤波器抑制电源干扰等,这些文献1都
3、作了介绍,这里所要介绍的是在单片机系统设计时,电路上采用的一些措施。 1.1“看门狗”的设计 “看门狗”技术是电路设计中较常用的一种技术。 如图1,计数器上电后一直处于计数状态,在计数器从0到溢出所需时间T内,程序控制I/O口对其复位。为了保证计数器不溢出,在编写程序时,要求在2T/3内复位“看门狗”。 当程序受干扰“跑飞”,即cpu“死机”后,计数器溢出,重新启动cpu.。应用“看门狗”时必须注意下面两个问题:一是在cpu“死机”时,计数器的复位端无效;二是cpu的现场恢复问题。 1.2监视CPU的地址空间 在设计时,对I/O的扩展常用地址译码技术。有时译码输
4、出有富余端,即程序正常执行时,不被选通的译码器输出端。当这些输出端被选通时,虽然程序已经“跑飞”,但可以用系统外部中断0或1(系统不用时),可依据图2,将空闲的输出端接到cpu的中断口,依靠cpu的中断管理程序使cpu正常工作。 我们知道,8031程序存储区与数据存储区是可以分开的,当应用程序编好后,程序用到的最高位地址是知道的,可以用一片GAL芯片监视程序存储区的地址,当cpu读程序的byte,由于cpu复位后总是从“0”地址执行,则程序地址不会超过2000H,如果cpu发出的地址超出2000H,而同时:/PESN端有效,则GAL发出复位信号。 1.3应用外部RAM进
5、行现场保护 在一些控制应用中,cpu被干扰后不允许从“0”地址执行,必须从断店执行,这就要求对一些重要的现场参数及程序进行状态进行保护。应用外部RAM进行现场保护是一种较为常用的方法。 在电路设计时,必须保证用于保护现场的RAM不会受到干扰。如图3是一种常见的电路。 如图3,外部RAM用于保护现场,它的写操作受到cs及OVDPTR,#4000;打开外部RAM的写锁存端 MOVA,#0; MOVXDPTR,A MOVDPTR,#2000H;保护现场 : : MOVDPTR,#5000H MOVA,#0FFH;关闭外部RAM的写锁存端 MOVXDPTR,A
6、 这样,一旦CPU失控,CPU启动后可以从外部RAM相应得位置读出参数,并恢复现场,从断点处执行程序,使人感觉不到CPU曾经出现过故障。 2CPU的软件抗干扰措施 上面介绍的抗干扰措施,是以外加硬件为前提的。在有些场合,在软件设计上采取一些措施也同样可以提高CPU的抗干扰能力。 2.1超时复位 8031CPU有两个16位内部定时器,当其空置时,则可以利用定时器的定时功能,监视程序的运行情况。以定时器0为例,说明其工作情况。 ORG0BH;中断入口 SJMPTIN0 : : MOVTNOD,#11H;定时器初始化 MOVTH0,#0 MOVTH0,#0
7、 SETBTR0;启动定时器0 SETBET0;打开定时器0溢出中断 SETBEA : TIN0:转入现场恢复程序 这样,只要每隔一段程序插入MOVTH0,#0这条指令,定时器就不会溢出;当程序不正确时,定时器0则会溢出。CPU响应该中断,进行必要的处理。 2.2插入空操作指令 CPU程序“跑飞”,就是cpu不能读出有效的指令码,8031的大部分指令为单字节指令,即使程序“跑飞”,都不会引起程序紊乱。但对于一些双字节指令或多字节指令,则影响较大。为了有效的消除程序“跑飞”的影响,在一些多字节指令后,
此文档下载收益归作者所有