看门狗技术与单片机应用系统抗干扰措施

发布者:程序界的行者最新更新时间:2015-03-20 来源: diangon关键字:看门狗技  与单片机应  抗干扰措施 手机看文章 扫描二维码
随时随地手机看文章
1 引言

  随着工业自动化水平的不断提高,以MCS-51单片机为核心所构成的单片机应用系统得到了广泛应用,如水泥生料配料系统、电子皮带秤给料控制、各种现场智能测量仪表等。但其工作现场条件恶劣,干扰多而且幅度大,严重影响着应用系统的正常运行与可靠性,甚至使应用系统计算机进入死循环而瘫痪,通常称为程序“跑飞”。由此引出的计算机可靠性问题,一直是人们研究的重要课题。
  采用屏蔽、滤波、退耦、隔离、接地等措施能有效地提高系统的抗干扰能力,但很难在强干扰发生时消除因程序“跑飞”而死机情况的发生。“看门狗”技术能在程序“跑飞”时实现自我诊断并使系统恢复运行,是单片机应用系统抗干扰的有力武器。当然,它是以系统的硬、软件设计开发的合理和成熟为条件的,否则将掩盖系统设计开发过程中的人为缺陷与不足。

2 “看门狗”技术及其对干扰的抑制

2.1 程序“跑飞”对系统的攻击
  (1)程序计数器PC的值被攻击,成为一随机拼合的数据。
  (2)系统设置的控制字与标志参数因“跑飞”后可能被访问而被攻击。
  (3)数据存储器RAM内容被攻击等。
2.2 “看门狗”技术
  “看门狗”源于“Watch dog、Watch dog timer”,或称定时监视技术,其本质是一可复位的定时器,其原理如图1、2所示。

t40-1.gif (3512 bytes)

图1 原理框图

t40-2.gif (3578 bytes)

图2 原理波形图

  在程序正常运行时,计算机通过程序以周期T1向定时器发送脉冲触发定时器(或通过软件以T1为周期初始化定时器),而由定时脉冲控制的定时器动作时间为T2(T3),在T1<T2(T3)时,定时器不会动作,处于休眠状态。当计算机受到强干扰等作用破坏后,程序计数器PC中内容不再是程序的正确代码,而可能为一随机拼合的数据,这样会使取指不正确,必然导致程序运行混乱“跑飞”,进入死循环而死机。反过来由于程序脱离正常循环,也使定时器触发脉冲丢失,在经过T2(T3)时间后,“看门狗”定时器被激活,向CPU发出Reset信号使其复位,将“跑飞”的程序从PC=0000H开始,纳入正常轨道。但有些生产过程是不能从头开始的,应用程序均是一循环体,且在开始处均有初始化程序,包含各种寄存器、指针、变量、控制字等。此时状态不能反应“跑飞”时的状态,有时还有人身、设备等方面的安全危险。在这种情况下,程序“跑飞”后应设法找到出错时的断点,此时就可以采用二级“看门狗”的方式。由程序设计时优先级设置为最高级的定时器一先发出中断请求信号,CPU响应中断转向中断处理程序,进而恢复系统。第二级“看门狗”电路只有在第一级未起作用时经过T3才起动Reset信号。
2.3 “看门狗”技术的实施方法
  (1)在系统构成时选用芯片内带有“看门狗”电路的单片机,如ATMEL公司的89C52等。
  (2)选配专门的“看门狗”电路,如美国Xicor公司的X25043/45、MAXIM公司的MAX813L等,它们均可构成独立的“看门狗”电路。
  (3)采用计数器、单稳态触发器、定时器等器件构成。在图3中用4060构成了一个二级“看门狗”电路。
  因中断入口0003H处仅有0003H~000AH单元可为中断服务程序所用,很可能容纳不下中断服务程序,故应在其内安排一条JMP Watch dog指令。由于“跑飞”,PC值在响应中断前已被破坏,在响应中断后,该内容自动被压入堆栈,故一定要用两条POP A指令将无用内容弹出,以便为中断返回时由堆栈给PC赋予“跑飞”处的正确值,这一点在设计中断服务程序时尤其要引起重视。通过对P1.0取反,恢复对4060的触发脉冲。在中断服务中应安排被破坏数据的诊断、修复以及查找“跑飞”处的地址正确入口,并在返回前将其压栈。当执行RETI时,“跑飞”处断点地址入口自动弹栈到PC,恢复正常运行。P1.0取反指令在何处插入应通过计算指令周期让两条CLR P1.0指令间隔小于定时器的定时时间T1<T2,可取T2=(1.5~2)T1。[page]

t40-3.gif (5521 bytes)

图3 二级“看门狗”电路

  (4)利用8031片内定时器/计数器 8031片内有两个十六位的定时器/计数器,可用定时器T0。在应用程序对T0初始化时,将其定时时间T2设置得比应用程序循环体执行时间T1长,可取:T2=(1.5~2)T1。当程序正常时,T0不会溢出,“跑飞”时溢出,定时器/计数器控制寄存器TCON的TF0(TCON.5)由8031内部硬件置位TF0=1,发出中断信号。设8031采用12MHz晶振,经定时器内部12分频后得1MHz的定时时钟,对应定时时间1μs,最长可定时约65.5ms,如应用程序循环时间T1=10ms,则可取T2=2T1=20ms,定时器的初值X可由下式确定:

(216-X)×1μs=20ms
X=45536D=B1EOH

定时器的初始化程序:

  MOV TLO,#OEOH
  MOV THO,#OB1H;定时器/计数器T0写入初值
  MOV TMOD,#O1H;设置定时器/计数器工作方式1
  SETB TRO;   起动定时器/计数器T0

  在应用程序的系统初始化时用下面指令设定T0优先级:

  SETB EA;   开放中断
  SETB ETO;  允许T0中断
  SETB PTO;  置T0中断优先级最高

  T0中断服务流程与中断服务流程(见图4)相比,其中断入口为000BH,去掉P1.0取反的指令,其余相同。靠优先级别最高的中断将控制权重新夺回交给CPU,使系统恢复正常。

t41-1.gif (4667 bytes)

图4 中断服务流程

2.4 断点的查找与恢复
  断点的查找与恢复是人们最关注的问题,我们的方法是扩展一外部数据存储器,用以存储“跑飞”前断点(或接近断点)的PC之值以及一些重要的变量、指针及控制字的值。利用正常工作时P1.0向“看门狗”发送的触发脉冲经反向、延时等作为外部扩展RAM的片选信号以T1为周期定时对外部RAM中内容进行刷新。当“跑飞”后因触发脉冲丢失而避免了外部RAM被攻击,保证其内容的可靠性。随着T1的减少,被恢复的值就愈趋近断点值,但要非常准确找到断点,还值得人们研究。在中断响应时由于P1.0恢复了输出触发脉冲,故可将断点值读出。

3 结束语

  “看门狗”是对付“跑飞”的有力手段,在生产过程中由于特定的生产条件使得“看门狗”技术有其相当的作用。我们在对某水泥厂微机配料系统的技术改造过程中采用了二级“看门狗”技术,该系统运行两年多来经受住了各种强干扰的考验,取得了令人满意的效果。
  对于“跑飞”后的诊断、恢复,尤其是如何更准确地找到程序“跑飞”断点,对被损数据加以恢复等方面尽管有许多软件可以利用,但还是值得人们多加关注的问题。

关键字:看门狗技  与单片机应  抗干扰措施 引用地址:看门狗技术与单片机应用系统抗干扰措施

上一篇:单片机专用系统的系统程序构成
下一篇:单片机编译预处理命令

推荐阅读最新更新时间:2024-03-16 13:55

单片机自身的抗干扰措施研制
  为提高单片机本身的可靠性。近年来单片机的制造商在单片机设计上采取了一系列措施以期提高可靠性。这些技术主要体现在以下几方面。 1.降低外时钟频率   外时钟是高频的噪声源,除能引起对本应用系统的干扰之外,还可能产生对外界的干扰,使电磁兼容检测不能达标。在对系统可靠性要求很高的应用系统中,选用频率低的单片机是降低系统噪声的原则之一。以8051单片机为例,最短指令周期1 s时,外时钟是12MHz。而同样速度的Motorola 单片机系统时钟只需4MHz,更适合用于工控系统。近年来,一些生产8051兼容单片机的厂商也采用了一些新技术,在不牺牲运算速度的前提下将对外时钟的需求降至原来的1/3。而Motorola 单片机在新推出的68HC
[单片机]
模拟传感器的抗干扰措施
模拟 传感器 的应用非常广泛,不论是在工业、农业、国防建设,还是在日常生活、教育事业以及科学研究等领域,处处可见 模拟 传感器 的身影。但在模拟传感器的设计和使用中,都有一个如何使其测量精度达到最高的问题。而众多的干扰一直影响着传感器的测量精度,如:现场大耗能设备多,特别是大功率感性负载的启停往往会使电网产生几百伏甚至几千伏的尖脉冲干扰;工业电网欠压或过压(涉县钢铁厂供电电压在160V~310V波动),常常达到额定电压的35%左右,这种恶劣的供电有时长达几分钟、几小时,甚至几天;各种信号线绑扎在一起或走同一根多芯电缆,信号会受到干扰,特别是信号线与交流动力线同走一个长的管道中干扰尤甚;多路 开关 或保持器性能不好,也会引起通道信号
[传感器]
单片机测控系统的抗干扰措施介绍
单片机测控系统的电路较复杂,产生干扰的原因很多。下面几种常用的抗干扰措施。 1、切断干扰的传播途径 1)增加干扰源(如电机、继电器)与敏感器件(如单片机)的距离,用地线把他们隔离或者在敏感器件加上屏蔽罩。 2)电路板合理分区,将强信号、弱信号、数字信号、模拟信号电路合理地分区域布置。 3)单片机和大功率器件的地线要单独接地,以减小互相干扰。大功率器件要尽可能布置在电路板的边缘。 4)在单片机I/O口,电路板连接线等关键地方,使用抗干扰元件可显著提高电路的抗干扰性能。 5)晶振与单片机引脚尽量靠近,用地线把时钟区隔离起来,晶振外壳接地并固定。 2、尽量采用抗干扰性能强的单片机 1)、降低单片机内部的电源噪声 在传统
[单片机]
<font color='red'>单片机</font>测控系统的<font color='red'>抗干扰</font><font color='red'>措施</font>介绍
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved