1 问题的提出
在以单片机为核心的智能仪表及过程控制系统中常常需要长时间保存实时参数。通常可采用E2PROM、FLASH MEMORY以及以随机存贮器为基础内置电池的非易失芯片来实现。E2PROM、 FLASHMEMORY属于可在线修改的ROM器件,它解决了应用系统中实时参数掉电保存的难题,但这类芯片写入速度慢(ms级),擦写次数有限(万次级),有些器件擦写次数虽达百万次,对某些应用系统而言,其写入次数仍然是有限的。因此这类芯片只能用在需要保护的数据量小且写入不频繁的系统中。对那些需要大容量高速反复存取实时参数的系统,只能用随机存贮器RAM加掉电保护电路实现。实现上述原理的掉电保护方法很多,某些厂商甚至以RAM为基础内置电池开发出自掉电保护芯片,用这类独立的掉电保护芯片或电路构成的单片机系统,实际应用中有时会出现工作不稳定现象。经分析发现:若系统电源的变化使RAM先处于保护状态,而系统尚未复位,单片机仍正常工作,这时就出现写不进,读不出的现象,引发系统故障。对于这种单片机复位电平与掉电保护电平不一致而影响系统可靠性的问题,本文提出用微处理器监控电路使单片机复位与掉电保护联动的解决方案。RAM在单片机复位时处于保护状态,工作时正常存取,从而有效地解决前述问题。
单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令的形式写下来,这是在设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。为使单片机能自动完成某一特定任务,必须把要解决的问题编成一系列指令(这些指令必须是选定单片机能识别和执行的指令),这一系列指令的集合就成为程序,程序需要预先存放在具有存储功能的部件——存储器中。存储器由许多存储单元(最小的存储单位)组成,就像大楼房有许多房间组成一样,指令就存放在这些单元里,单元里的指令取出并执行就像大楼房的每个房间的被分配到了唯一一个房间号一样,每一个存储单元也必须被分配到唯一的地址号,该地址号称为存储单元的地址,这样只要知道了存储单元的地址,就可以找到这个存储单元,其中存储的指令就可以被取出,然后再被执行。
2 MAX791[1]芯片介绍
MAX791是MAXIM公司生产的高性能微处理器电源监视电路,它与AMDA公司的AMD791性能相同可以互换。功能包括微处理器复位、备用电池切换、看门狗电路、CMOS-RAM写入保护及电源故障告警等,逻辑框图如图2—1[1]。图中VCC、VOUT分别为电源输入、输出,VBATT为电池输入,为电源低输出,和为RAM芯片使能输入与输出,为复位输出,为人工复位输入,为低将强制RESET有效,SWT、WDI、、分别为看门狗定时设置、触发输入、超时输出和超时脉冲。PFI和分别为电源故障输入和输出,PFI低于1.25 V时变低。MAX791的复位时序如图2—2[1]所示。
3 掉电保护电路设计
3.1 硬件设计
图3—1给出了一种带掉电保护的MCS-51[2]、[3]单片机应用系统的原理图。76C88是CMOS型的RAM芯片,其容量为8K×8,它有两个片选端和CS2,只有为低电平同时CS2为高电平时芯片才被选中。因此将CS2接MAX791的输出端,同时写允许信号通过MAX791的使能控制输入端和输出端,间接从MCS-51的引入,保证在系统复位期间不能读写,有效地保护了76C88中的数据。结合图2—2 MAX791的复位时序,图3—1的电路工作原理分析如下。
上电过程:当VCC从OV上升到复位门限1.65V, 输出仍将维持有效电平200ms的时间,保证电源电压正常后系统的有效复位。
有效期间76C88的CS2处于低电平,即片选信号无效,保证上电过程中片内数据不被改写。当VCC大于VBATT时,VOUT自动切换到与VCC相接,76C88转由VCC供电。
RAM(随机存取存储器)RAM -random access memory 随机存储器。存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的位置无关的存储器。这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序。 按照存储信息的不同,随机存储器又分为静态随机存储器(Static RAM,SRAM)和动态随机存储器(Dynamic RAM,DRAM)。
正常工作:在此状态下,CS2为高电平,通过MAX791的使能电路复制,单片机可对76C88进行读写操作。为防止程序跑飞,提高系统的可靠性,在程序中插入看门狗触发指令,当程序跑飞超过1.6 s不能触发看门狗时,输出低电平,通过MR使系统复位。
掉电过程:当VCC从正常电压下降到复位门限4.65V时,立即有效,CS2变成低电平,76C88进入保护状态,保证掉电过程中片内数据不被改写。当VCC小于VBATT时,VOUT自动切换到与VBATT相接,76C88转由后备电池供电。 对多数应用系统,上电复位后程序从头开始即能满足要求, 利用MAX791的电源报警功能,能方便地达到这一目的:分析图2-2,当VCC下降到4.65V+150mV时,产生负跳变,向单片机发中断请求,因贮能效应,VCC从4.8 V降到4.65 V有几个ms的时间,足够单片机执行几百条甚至上千条指令,利用这段时间在中断服务程序中保护断点及实时参数。重新来电后转入断点继续执行。
3.2 软件设计
图3—1所示单片机系统的软件可分成主程序和电源报警中断服务程序两部分。主程序中必须插入指令经常触发WDI,且间隔时间不能超过1.6s,报警中断必须设置为非屏蔽中断没有可以将设置成唯一的一个高级中断以替代。程序流程图如图3—2。
4 结束语
将复位与掉电保护联动,能有效解决掉电保护与复位不协调引起的系统工作不稳定现象,提高掉电保护电路及单片机应用系统的可靠性。以MAX791微处理器监控电路构成的单片机掉电保护系统,在电力、石化等工业现场应用效果十分理想。
上一篇:80C51虚拟指令执行系统的设计与实现
下一篇:MCS51系列单片机软件抗干扰技术中的误区介绍
推荐阅读最新更新时间:2024-03-30 21:48
- 研华全新模块化电脑SOM-6833助力5G路测设备升级
- 企业文化分享 如何培养稀缺的硅IP专业人员?SmartDV开启的个人成长与团队协作之旅
- 新帅上任:杜德森博士(Dr. Torsten Derr)将于2025年1月1日出任肖特集团首席执行官
- 英飞凌推出简化电机控制开发的ModusToolbox™电机套件
- 意法半导体IO-Link执行器电路板为工业监控和设备厂商带来一站式参考设计
- SABIC进一步深化与博鳌亚洲论坛的战略合作伙伴关系
- 使用 3.3V CAN 收发器在工业系统中实现可靠的数据传输
- 尼得科精密检测科技将亮相SEMICON Japan 2024
- 浩亭和美德电子(TTI)宣布战略合作伙伴关系现已扩展至亚洲