单片机应用系统的可靠性设计

最新更新时间:2014-02-28来源: 21IC关键字:单片机应用  可靠性设计 手机看文章 扫描二维码
随时随地手机看文章

随着单片机在国防、金融、工业控制等重要领域应用越来越广泛,单片机应用系统的可靠性越来越成为人们关注的一个重要课题。单片机应用系统的可靠性是由多种因素决定的,大体分为硬件系统可靠性设计和软件系统可靠性设计。

一、硬件系统可靠性设计

(1)选优设计

在系统硬件设计和加工时,应该选用质量好的接插件,设计好工艺结构;选用合格的元器件,进行严格的测试、筛选和老化;设计时技术参数(如负载)要留有一定的余量或降额使用元器件;提高印制板和组装的质量。

(2)冗余与容错设计

保证单片机应用系统100%无故障是不可能的。容错是指当系统的某个部件发生故障时,系统仍能完全正常地工作,即给系统增加容忍故障的能力。为使系统具有容错能力,必须在系统中增加适当的冗余单元,以保证当某个部件发生故障时能由冗余部件接替其工作,原部件修复后再恢复出错前的状态。硬件冗余设计可以在元件级、子系统或系统级上进行。例如,在系统级上采用双机系统,两套系统互为备用。

(3)采用硬件抗干扰措施

来自供电系统以及通过导线传输、电磁耦合等产生的电磁干扰信号,是单片机系统工作不稳定的重要因素,在系统硬件设计时必须采取有效的干扰抑制措施。单片机应用系统中还常使用系统监视电路检测系统发生的错误或故障,自动报警或使系统自动恢复正常工作状态。如采用电源故障监视、看门狗定时器等采用89C51单片机和X25045组成的看门狗电路,X25045硬件连接图如图所示。X25045芯片内包含有一个看门狗定时器,可通过软件预置系统的监控时间。在看门狗定时器预置的时间内若没有总线活动,则X25045将从RESET输出一个高电平信号,经过微分电路C2、R3输出一个正脉冲,使CPU复位。如图1所示电路中,CPU的复位信号共有3个:上电复位(C1、R2),人工复位(S、R1、R2)和Watchdog复位(C2、R3),通过或门综合后加到RESET端。C2、R3的时间常数不必太大,有数百微秒即可,因为这时CPU的振荡器已经在工作。

 

 

看门狗电路的定时时间长短可由具体应用程序的循环周期决定,通常比系统正常工作时最大循环周期的时间略长即可。编程时,可在软件的合适地方加一条喂狗指令,使看门狗的定时时间永远达不到预置时间,系统就不会复位而正常工作。当系统跑飞,用软件陷阱等别的方法无法捕捉回程序时,则看门狗定时时间很快增长到预置时间,迫使系统复位。需要注意的是,在程序正常运行的时候,应该在适当的地方加一条喂狗指令,使系统正常运行时的定时时间达不到预置时间。系统就不会复位。

二、软件可靠性设计

单片机应用系统的软件和硬件是紧密相关的。要使整个系统具有较高的可靠性,除了在尽可能提高硬件可靠性的前提下,软件的可靠性设计也是必不可少的,必须从设计、测试及长期使用等方面来解决软件可靠性。单片机系统的抗干扰能力是系统可靠性的重要指标。由于51单片机的指令系统是复杂指令集结构,致使其抗干扰性能较低,尤其用在工业控制的场合,如果不增加额外的抗干扰措施,甚至无法正常工作。单片机软件抗干扰设计的主要目的就是及时发现“跑飞”的程序,并及时地将程序拉入正常轨道,主要方法有:指令冗余、软件“陷阱”、软件“看门狗”等等。

(1)指令冗余

CPU取指令过程是先取操作码,再取操作数。在程序的关键地方人为的插入一些单字节指令,或将有效单字节指令重写称为指令冗余,通常是在双字节指令和三字节指令后插入两个字节以上的NOP指令。这样即使跑飞程序飞到双字节指令和三字节指令操作数上。由于窄操作指令NOP的存在,避免了后面的指令被错误地执行,为程序纳入正轨做好准备。此外,对系统流向起重要作用的指令,如RET、RETI、LCALI.、LJMP,JC等,可以在这些指令之后插入两条NOP指令,可将跑飞程序纳入正轨,以确保这些重要指令的执行。指令冗余只能使CPU不再将操作数当作操作码错误地执行,却不能主动地将程序的错误执行方向扭转过来,要想纠止程序的错误执行方向,就需要下面的技术。(2)设计软件“陷阱”

通常在程序存储器中未使用的EPROM空间填入窄操作指令NOP,最后再填入一条跳转指令,跳转到跑飞处理程序,或者直接填入指令LJMP 0000H,当跑飞程序落到此区域。即可在执行一段空操作后转入正轨。如果未使用的EPROM空间比较大,可以均匀地填入几条空操作指令和跳转指令,这种几条空操作指令加一条跳转指令的结构我们称之为“软件陷阱”.

软件陷阱的一般结构为:

NOP

NOP

LJMP FLY

FLY为跑飞处理子程序,如果程序正常执行,软件陷阱部分是永远也执行不到的,只有在程序跑飞到陷阱里,软件陷阱会立刻将程序跳转到正常轨道。即使程序没有跑飞到陷阱里,也可以在程序执行一段错误操作后遇到一个软件陷阱,从而转入正轨。除了程序存储器的空白区域,程序的数据表结尾也应该设置软件陷阱,如果数据表比较大,应该在数据表的中间也设置软件陷阱,以保证程序跑飞到数据区能及时转入正轨。另外,如果程序存储器的空间足够大的话,可以在每两个子程序中间设 置一个软件陷阱。当使用的中断因干扰而开放时,在对应的中断服务程序中设置软件陷阱,能及时捕获错误的中断。软件陷阱的数量要根据实际受到干扰的情况和程序存储器的容量来确定,如果太少不能进行有效的跑飞拦截,如果太多又会占用大量的程序存储器空间。

(3)软件“看门狗”技术

跑飞的程序在执行一些错误操作之后。

经常会进入“死循环”,也就足常说的“死机”.通常采用“软件看门狗”技术使程序脱离“死循环”,软件“看门狗”技术的原理是通过不断检测程序循环运行时间,若发现程序循环时间超过最大循环运行时间,则认为系统陷入“死循环”,需要进行出错处理。在实际应用中,通常用定时中断服务程序定时地检查主程序的运行情况。例如,在RAM区选择一个字节作为软件看门狗寄存器,主程序每循环一次将该寄存器加l,定时器TO的中断服务程序每中断一次将该寄存器减l并检查一次,如果程序执行正常。看门狗寄存器不会改变或改变不大,如果看门狗寄存器发生了改变或改变很大,则说明系统陷入“死循环”.需要进行出错处理。在工业应用中,严重的干扰有时会破坏中断方式控制字,关闭中断,造成看门狗失效,这时可以采用环形中断监视系统。用定时器TO监视定时器Tl,用定时器Tl监视丰程序,主程序监视定时器T0.

采用这种环形结构的软件“看门狗”具有良好的抗干扰性能,大大提高了系统可靠性。对于需经常使用Tl定时器进行串口通讯的测控系统,则定时器Tl不能进行中断,可改由串口中断进行监控。当然,对主程序最大循环周期、定时器T0和Tl定时周期应于全盘合理考虑。软件“看门狗”技术需要使用定时器,而在大多数的控制程序中,定时器都是紧俏的资源。这就使“软件看门狗”技术的实际应用受到了限制,我们可以采取一些技巧性的处理,将软件“看门狗”程序与其它定时程序复用同一个定时器,这样既完成定时功能又完成软件“看门狗”的功能。

(4)检查RAM区标志数据及时发现严重干扰

这种方法是在RAM区中选择几个固定单元,在初始化程序中将其设置成固定的数据,只要程序正常运行,这些单元的内容是不会改变的。如果因为程序“跑飞”或其它干扰导致这些RAM单元中的任何单元的数据发生了变化,说明单片机系统已经受到了严重的干扰,不能可靠地运行下去了。我们可以在程序执行的过程中适时地检查这些RAM单元的内容,一旦发现有数据改变,立刻执行LJMP 0000 H语句,强制单片机复位。

(5)刷新输出端口

排除严重干扰,当单片机系统受到严重干扰时,输出端口的状态也可能因干扰而改变,在程序的执行过程中适时地根据相关程序模块的运算结果刷新输出端口,可以排除干扰对输出端口状态的影响,使错误的输出状态及时得到纠正。

(6)进行多次输入采样

避免严重干扰,强烈的干扰会影响单片机的输入信号,造成输入信号瞬间采样的误差或误读,要避免干扰的影响,通常采取重复采样,加权平均的方法。

三、结束语

单片机系统运行的可靠性会不确定因素的干扰。提高单片机应用系统的可靠性要从软硬件入手。提高系统的自身防御行为,以上所提到几种提高可靠性的方法,都不是单独使用的,只有根据实际情况将这些方法有效地结合起来,才能达到最佳抗干扰效果,使我们的单片机系统稳定可靠地工作。

关键字:单片机应用  可靠性设计 编辑:探路者 引用地址:单片机应用系统的可靠性设计

上一篇:基于FPGA的通用数控分频器的设计与实现
下一篇:基于ARM11和DSP协作视频流处理技术的3G视频安全帽设计

推荐阅读最新更新时间:2023-10-12 22:36

爱普特32位MCU APT32F1023H8S6应用于智能净水器
智能净水器一般配有LED显示屏,带有语音提醒功能、温度监测控制、温度报警、水位控制、水位监控报警等。本文主要提到爱普特的C-Sky 32位CPU内核的微控制器APT32F1023H8S6在智能净水器上的应用。 以下为智能净水器的部分原理框图: 32位MCU APT32F1023H8S6应用于智能净水器中的优势特点: 1、最高48MHz工作频率,内建单周期乘法、SWD调试和硬件除法,为用户实现高效、快速的指令控制。 2、具备64K字节的内部闪存程序,更利于用户程序开发。 3、1xI2C,3xUART,1/0xSPI,1xSIO,满足用户外设多接口设计要求。 4、支持更宽的工作温度:-40至+85°C。 5、1个12位A/D
[嵌入式]
爱普特32位<font color='red'>MCU</font> APT32F1023H8S6<font color='red'>应用</font>于智能净水器
利用PWM给HCS12单片机应用增加语音功能
随着嵌入式领域的拓展,目前许多微控制器芯片一般都不具备数据-模拟的双向通道,但几乎都集成有PWM产生模块。本文利用飞思卡尔公司HCS12单片机的PWM模块,还原存储在存储器中的声音采样数据,在几乎不增加成本的情况下,实现嵌入式应用中的扩展语音功能。   HCS12系列单片机未包含数/模转换的模块。要给其扩展语音功能,通常的做法是增加一块数/模转换芯片。虽然这样做可以得到非常好的音质(取决于数/模转换芯片的性能),但由于要多使用一块数/模转换芯片,在对音质要求不太高的应用中,会给设计增加额外的成本,同时也使电路设计相对复杂。   本文介绍利用PWM还原声音的解决方案,可以很好地解决这个矛盾。例如安全报警应用中,系统
[单片机]
DSP/FPGA高精度测量系统多电源可靠性设计
由于高精度测量系统工作频率高,数据处理量大,功耗也相对较高,而供电系统的好坏直接影响到系统的稳定性和系统的精度,所以设计高效率、高可靠性的供电系统具有极其重要的现实意义。本文主要叙述了一个实际高精度测量系统的电源设计。 1 DSP和FPGA的电源要求 系统采用Altera公司的Cyclone系列EPIC12型号FPGA和TI公司的TMS320C6713B型号DSP均需要两种电源 :外围I/O电压为3.3V及内核电压分别为1.5V和1.2V。因此必须考虑它们的配合问题:(1)在加电过程中,要保证内核先得到供电,外围I/O后得到供电,内核最晚也应该与周边I/O接口电源同时加电。否则可能会导致DSP和FPGA的
[测试测量]
DSP/FPGA高精度测量系统多电源<font color='red'>可靠性设计</font>
内嵌微控制器的无线数据发射器的特性及应用
概 述 AT86RF401是单片机集成内嵌AVR RISC微控制器的RF无线数据发射器,输出频率范围为250~450MHz,最大输出功率+6dBm,发射率10Kband。芯片内嵌AVR RISC微控制器、2KB(1K×16b)的Flash程序存储器、128B(字节)的可下载的EEPROM数据存储器、128B的RISC SRAM、看门狗定时器、6个通用I/O、在系统可编程。工作电压2.0~3.5V。待机电流0.1~0.5μA,发射电流17mA,可用CR20332/CR201B LiMnO2电源供电。可用于遥控无键入口(RKE)发射器、车库门开门器、遥测(轮胎压力,水、电、气表,贵重物品跟踪)、无线安防系统、无线电遥控等应用领域。
[单片机]
内嵌<font color='red'>微控制器</font>的无线数据发射器的特性及<font color='red'>应用</font>
双端口RAM在单片机系统中的应用
1引言 在对产品可靠性要求高的系统中,往往需要硬件冗余。有些设备不仅要求其在各种恶劣的天气下工作,而且要求长期不间断工作。为提高可靠性往往采用双CPU系统。平时主单片机系统工作,并将所处理的数据存储在外存,一旦主CPU系统出现故障,副CPU可切换上来,并利用公共外存的数据继续工作,而不需要人工干预。这时双端口RAM做为外存就是两个CPU之间信息传递的最好渠道。本文以美国IDT公司生产的IDT7130为例,阐述双端口RAM在最常用的80C31双机系统中的应用。 2 系统的基本结构及硬件框图 如图1所示,整个系统由2个8031最小系统、双端口RAM、故障探测及切换系统、程序监控系统、I/O转换电路、键盘显示
[单片机]
双端口RAM在<font color='red'>单片机</font>系统中的<font color='red'>应用</font>
通过利用单片机实现RLC、频率及相位差测量仪的应用方案
引言 目前,要在实验室中完成对RLC、频率及相位差的测量,实际需要用几个仪表,如RLC表、频率计和相位仪,这给实际使用带来诸多不便。而且现在常用的仪表一般还是传统的模拟式仪表,漂移大,程控性能不好,而有些仪表功能过于单一,不能满足实际需求。为此,本文考虑到实际的科研实验需要,给出了一种可同时测量RLC、频率及相位差的测量仪的设计方法。 1 系统组成与硬件电路设计 1.1 系统组成 该仪器包括信号产生与接收模块、信号的放大整形滤波处理模块、单片机中央处理器、显示模块LCD12864和外部按键控制模块等几个部分,其系统组成结构框图如图1所示。 本系统以单片机MSP430F149为处理器,主要用于整个系统的信号采集、输入输出控制
[单片机]
通过利用<font color='red'>单片机</font>实现RLC、频率及相位差测量仪的<font color='red'>应用</font>方案
单片机在自动血压监控系统中的应用
  引言   目前医院使用的自动血压监控系统大多为进口设备,价格昂贵,就医成本高。本文所讨论的系统价格低廉,测量准确,有其独特之处,具有很高的实用价值。   1 系统功能和构成   该系统由一台PC机实现数据接收和数据管理,再配合每个病房单独使用的自动血压监测仪(在自动血压计内部加装单片机 单片机   单片机是单片微型计算机(Single-Chip Microcomputer)的简称,是一种将中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)采用超大规模集成电路技术集成到一块硅片上构成的
[单片机]
<font color='red'>单片机</font>在自动血压监控系统中的<font color='red'>应用</font>
小广播
最新电源管理文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved