浅谈单片机系统与掉电保护电路的可靠性提高方案

发布者:science56最新更新时间:2011-10-28 关键字:单片机系统  掉电保护电路 手机看文章 扫描二维码
随时随地手机看文章

    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]所示。

[page]

    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微处理器监控电路构成的单片机掉电保护系统,在电力、石化等工业现场应用效果十分理想。

 

 

关键字:单片机系统  掉电保护电路 引用地址:浅谈单片机系统与掉电保护电路的可靠性提高方案

上一篇:基于单片机的铅酸蓄电池智能充电器设计
下一篇:基于HT46RU232单片机的智能家居电话远程控制系统

推荐阅读最新更新时间:2024-03-16 12:44

SD卡在单片机系统上的应用
SD卡在现在的日常生活与工作中使用非常广泛,时下已经成为最为通用的数据存储卡。在诸如MP3、数码相机等设备上也都采用SD卡作为其存储设备。SD卡之所以得到如此广泛的使用,是因为它价格低廉、存储容量大、使用方便、通用性与安全性强等优点。既然它有着这么多优点,那么如果将它加入到单片机应用开发系统中来,将使系统变得更加出色。这就要求对SD卡的硬件与读写时序进行研究。对于SD卡的硬件结构,在官方的文档上有很详细的介绍,如SD卡内的存储器结构、存储单元组织方式等内容。要实现对它的读写,最核心的是它的时序,笔者在经过了实际的测试后,使用51单片机成功实现了对SD卡的扇区读写,并对其读写速度进行了评估。下面先来讲解SD卡的读写时序。 (1
[单片机]
基于BU65170与单片机系统的RT设计与实现
1 引言: 1553B总线是一种时分制指令响应型串行多路数据传输总线,它最早应用于70年代末美国军用飞机的航电系统中并取得了成功,因其具有一般数据总线所无法比拟的高可靠性和实时性,在很多重要的科技领域都得到了广泛应用。在我国,近年来1553B总线也广泛应用于航空航天电子设备、地面车辆系统、舰艇系统等不同的军事平台上以及一些民用设备中。本文在所研制的某人造卫星有效载荷测控系统中,基于星上数据管理系统所采用的1553B总线,选用了专门用于 RT模式的总线协议芯片BU65170,设计了BU65170与单片机控制器的硬件接口,编制了BU65170的初始化和控制软件,最终实现了有效载荷对星上数据管理系统所发的内部指令、数据注入以及广播时间
[单片机]
基于BU65170与<font color='red'>单片机系统</font>的RT设计与实现
液晶显示模块HG240128R在单片机系统中的应用
  清达光电技术有限公司开发出的HG240128R系列液晶显示模块,与同类产品相比,具有显示信息量大、编程简单、体积小、质量轻等诸多优点,适用于移动通讯、仪器仪表、电子设备等各种领域。   下面以HG240128R在某些人机界面单元中的实际应用系统为例,详细阐述HG240128R液晶显示模块的应用。 1. HG240128R模块说明   HG240128R液晶显示模块为240×128点阵,控制芯片采用RA8820,能容纳16×16点阵的汉字共15/行×8/列,内建512KByte的16*16中文显示字形ROM, 储存7602个标准GB码的简体中文。该器件外形尺寸为140×82mm,显示尺寸为114×64mm,显示模式可选STN黄绿
[电源管理]
STM32单片机常用库函数 STM32单片机系统作用
STM32单机片又被称为嵌入式单机片,靠着高性能、低成本、低功耗、可裁剪吸引着大家。 系统作用 1、集成嵌入式Flash和SRAM存储器的ARM Cortex-M3内核。 2、嵌入式Flash存储器和RAM存储器 3、可变静态存储器(FSMC 4、嵌套矢量中断控制器(NVIC) 5、外部中断/事件控制器(EXTI) 6、时钟和启动 7、Boot模式 STM32单片机常用库函数 1.GPIO初始化函数 用法: voidGPIO_Configuration(void) { GPIO_InitTypeDefGPIO_InitStructure;//GPIO状态恢复默认参数 GPIO_InitStructure.GPIO_Pin=
[单片机]
低成本的单片机系统中液晶显示技术的研究
  1.引言   随着电子技术的迅速发展,使得电子电路的设计日趋复杂,单片机因为具有高集成度、高稳定性和成本低廉等特点,因而在电子设计中得到越来越广泛的应用。在很多场合需要显示单片机系统的数据信息。一般情况下使用数码显示管或者CRT、彩色液晶显示器,但是,这几种显示方式都各有利弊。   第一,使用数码显示管虽然成本低廉,但是显示内容非常有限且单一,不能满足越来越多的显示需求;第二,使用CRT或者彩色液晶显示器可以显示更多的内容,但是存在着设计复杂化、提高设计成本和浪费资源等弊端。因此,实际工作中迫切需要一种简单实用,成本低廉,设计简单的显示其产品。   2.基本原理LC0811-SL由液晶显示器控制器和液晶显示器面板以及发光
[单片机]
低成本的<font color='red'>单片机系统</font>中液晶显示技术的研究
单片机系统中法拉电容的数据保护研究
引 言 在测量、控制等领域的嵌入式系统应用中,常要求系统内部和外部数据存储器(RAM)中的数据在电源掉电时不丢失,重新加电时RAM中的数据能够保存完好,以保证系统稳定、可靠地工作和数据信息处理的安全。这就要求对系统加接掉电保护措施。掉电保护可采用以下三种方法: 一是加接不问断电源。由于这种方法体积大、成本高,对单片机系统来说,不宜采用。 二是采用EEPROM来保存数据。但由于其读写速度与读写次数的限制,使得EEPROM不能完全代替RAM。 三是采用备份电池,掉电后保护系统中全部或部分数据存储单元的内容。 显然,上述第三种方法是比较可行的。实际应用中,往往采用内置锂电池的非易失性静态随机存取存储器(nonvola
[单片机]
<font color='red'>单片机系统</font>中法拉电容的数据保护研究
单片机系统软件看门狗的设计思路解析
硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位如果出现死循环,或者说PC指针不能回来。那么定时时间到后就会使单片机复位。常用的WDT芯片如MAX813,5045,IMP 813等,价格4~10元不等。 软件看门狗 软件看门狗技术的原理和这差不多,只不过是用软件的方法实现,我们还是以51系列来讲,我们知道在51单片机中有两个定时器,我们就可以用这两个定时器来对主程序的运行进行监控。我们可以对T0设定一定的定时时间,当产生定时中断的时候对一个变量进行赋值,而这个变量在主程序运行的开始已经有了一个初值,在这里我们要设定的定时值要小于主程序的运行时间,这样在主程序
[单片机]
<font color='red'>单片机系统</font>软件看门狗的设计思路解析
单片机系统Flash存储器在系统编程设计
随着排放法规的加严,发动机电子控制单元(ECU)成为了现代汽车中一个必备部分。在发动机控制单元这种单片机系统中,Flash存储器已成为其一个基本配置,主要用来存放控制程序代码。 将程序代码装入Flash存储器的方法有3种:第1种方法是要求供应商在存储器发货前将数据写入,但无法满足产品开发阶段修改程序的要求;第2种方法是使用编程器编程,但由于Flash存储器正在向小型化、贴片式发展,从而使Flash存储器难以利用编程器编程;第3种方法是将存储器安装到电路板上进行编程,即在系统编程(In System Programming,ISP),这种编程方式是通过系统的微处理器实现对Flash存储器的编程,不需要其他编程设备和附加编程电源,具
[单片机]
<font color='red'>单片机系统</font>Flash存储器在系统编程设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

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

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