嵌入式控制系统为了实现某型军用船艇模拟训练系统的操纵控制功能而开发的。该系统基于军民两用的自动技术,采用模块化设计,可以方便地完成系统的升级改造,以适应船艇改进改型的需要,运用前景十分广阔。嵌入式控制系统是船艇模拟训练系统的控制中枢,其抗干扰设计是船艇模拟训练系统开发的重要环节,直接影响到系统的稳定运行。
时钟电路抗干扰设计
时钟电路产生CPU的工作时序脉冲,是正常工作的关键。时钟信号被干扰后将导致CPU的工作时序发生紊乱,使得系统不能正常工作。
时钟信号不仅是对噪声干扰最敏感的部位,同时也是单片机系统的主要噪声源。单片机的时钟信号为频率很高的方波,由与其频率相同的正弦基波和其倍频正弦波叠加而成。频率越高,越容易发射出去成为噪声源。此外,时钟频率越高,信息传输线上信息变换频率也越高,致使线间串扰、反射干扰以及公共阻抗干扰加剧。因而,在满足系统功能的前提下CONTROL ENGINEERING China版权所有,应尽量降低时钟频率,对降低系统的电磁发射,提高系统的抗干扰性能极为有利。
系统的嵌入式控制系统时钟电路的抗干扰设计主要有以下几步。
● 时钟脉冲电路尽量靠近CPU,引线尽量短而粗。
● 用地线
● 晶振电路电容性能稳定,容量准确且远离发热元件。
● 印刷电路板上大电流信号线、电源变压器远离晶振信号的连线。
● 对于外部时钟源电路,对其芯片电源采取滤波措施。
● 时钟电路为其他芯片提供时钟信号时控制工程网版权所有,采用隔离和驱动措施。
复位电路的设计
在嵌入式控制系统设计中控制工程网版权所有,复位电路的设计非常重要,因为单片机应用系统工作时,会经常要求进入复位工作状态,因而要求复位电路必须准确、可靠地工作,其复位状态与应用系统的复位状态是密切相关的。
单片机的复位是靠外部电路实现的,在时钟电路工作后,只要在单片机的RST引脚上出现24个振荡脉冲(2个机器周期)以上的高电平,单片机就实现初始化状态复位。为了保证系统可靠的复位,在设计复位电路时,要使RST引脚保持10ms以上的高电平。只要RST保持高电平,MCS-51单片机就循环复位;当RST从高电平变为低电平以后,单片机就从0000H地址开始执行程序。在复位有效期间,ALE、PSEN、P0、P1、P2、P3口引脚输出高电平,即使准双向口皆处于输入状态,并将07H写入栈指针SP(即设定堆栈底为07H)。同时控制工程网版权所有,将程序计数器PC和其余的特殊功能寄存器清零(不定的位除外)。复位不能影响单片机内部的RAM状态,但上电复位时,由于是重新供电,RAM在断电时数据丢失,上电复位后为随机数。复位后单片机的初始复位状态如表1所示。
系统中采用程序运行监视电路设计来满足系统的复位工作要求。程序运行监视通常都由各种类型的程序监视定时器WDT(Watch Dog Timer),俗称"看门狗"。WDT可保证程序非正常运行,如程序"死机"时,能及时进入复位状态。WDT通常有三种类型:单片机内部的WDT功能单元;μP监视控制器件的WDT电路;单片机外部设置的WDT电路。本系统中,我们使用单片机外部设置WDT电路。
图1是外部WDT电路示意图。WDT是一个带有清除端CLR及溢出信号OF输出的定时器。定时器由脉冲源PWDT、循环计数器、单稳态电路组成。PWDT提供循环计数器的计数脉冲,单稳态将循环计数器溢出信号转换成单片机的复位脉冲WRST。
图1 单片机外部WDT电路示意图
系统使用的MAX813L与8031的接口电路如图2所示。该电路可实现看门狗、电源故障监控的功能。MAX813L是一款带有WDT和电压监控功能的芯片,其WDT功能可在输入于1.6s内没有变化时,产生复位输出。同时控制工程网版权所有,电压监控功能可以保证当电源电压低于1.25V时,产生低掉电输出。此外,MAX813L还能在上电时自动产生200ms宽的复位脉冲,并具备工复位功能,可以给CPU提供良好的保护。
图2 MAX813L与单片机8031的连接图
通过把WO与WR直接相连接,一旦程序跑飞,WO将变为低电平,并保持140ms以上。该信号将使MAX813L复位,同时清零看门狗定时器,使RST引脚输出高电平,将单片机复位。200ms结束后,单片机脱离复位状态,重新恢复正常的程序运行。
上述的硬件"看门狗"用于解决主程序的死循环故障,对于程序中出现的中断故障www.cechina.cn,系统使用软件"看门狗"来实现对中断的发现和处理。软件"看门狗"会在主程序中设置变量t0和t1。当T0发生一次中断,将t0加1,T1发生一次中断,将t1加1。在主程序的功能模块开始处记录下t0、t1的当前值,设置计数器的计数周期,使之小于功能模块的执行时间。这样,在功能模块的执行周期内,计数器肯定会发生中断,通过在功能模块的出口处检测