掉电保护在嵌入式系统中的设计应用

最新更新时间:2012-02-20来源: 与非网关键字:掉电保护  嵌入式系统  ARM7 手机看文章 扫描二维码
随时随地手机看文章

    在嵌入式系统设计过程中,系统的掉电保护越来越受到重视。本文介绍的方法是在用ARM7系列芯片S3C4510B和μClinux构建的嵌入式平台上实现的。整个掉电保护实现的基本思路是:产生掉电信号,捕捉掉电信号和处理掉电信号。重点介绍这个过程的具体实现。

    系统防掉电设计的目的是:采用一种机制,使得系统在意外失去供电的情况下,可以保证系统运行状态的确定性以及记录数据的完整性;当系统供电恢复后,现场数据可以及时恢复,避免应用系统产生混乱。我们知道,在嵌入式系统设计与开发中越来越多地应用嵌入式操作系统。由于操作系统的引入,数据的读写往往是通过文件的方式完成,而不是直接对存储单元地址操作。用文件读写方式操作数据,在程序的运行过程中往往将数据暂存在易失性的存储空间,如SDRAM,一旦系统意外失电,这些数据往往被丢失。因此,当系统意外失电时必须采取一定的措施进行系统的掉电保护,以避免系统产生混乱。总的说来,防掉电程序的主要思路就是:产生掉电信号,捕捉掉电信号,处理掉电信号和数据以及现场状态的恢复。

    如果不引入操作系统,直接对存储单元进行数据操作,每次操作的数据量小,可以利用中断服务的方式进行掉电保护;而用文件的方式进行数据操作,数据量一般比较大,因此基于中断服务的方式进行掉电保护已经不再可靠。本文研究的对象是基于操作系统的较为复杂的嵌入式系统设计过程中的掉电保护。

    1 掉电保护方案实现的系统基础

    掉电保护是在由ARM体系的硬件平台和μClinux嵌入式操作系统的基础上实现的。

    ARM7系列的微处理器支持八种类型的中断处理。外部中断请求会在外部中断引脚有效(一般是低电平),并且程序状态寄存器相关位(即CPSR的I控制位)设置为允许时得到处理器响应。响应后处理器进入中断工作模式,PC被装人中断向量0x00000018。在这个地址单元存放中断服务程序人口地址,中断服务程序就可以被执行。在掉电保护方案中,中断服务程序很简单,就是将表示掉电的全局变量置位即可。这样可以缩短程序执行时间。

    Flash存储器是一种可在系统(in system)进行电擦写,电后信息不丢失的存储器。它具有低功耗、大容量、可整片或分扇区在系统编程(烧写)、擦除等特点,并且可由内部嵌入的算法完成对芯片的操作,因而在各种嵌入式系统中得到了广泛的应用。作为一种非易失性存储器。Flash在系统中通常用于存放程序代码、常量表以及一些在系统掉电后需要保存的用户数据等。常用的Flash为8位或16位的数据宽度,编程电压为单3.3V。与Flash存储器相比较,SDRAM不具有掉电保持数据的特性,但其存取速度大大高于Flash存储器,且具有读/写的属性,因此,SDRAM在系统中主要用作程序的运行空间、数据及堆栈区。当系统启动时,CPU首先从复位地址0x0处读取启动代码,在完成系统的初始化后,程序代码一般应调入SDRAM中运行,以提高系统的运行速度,同时,系统及用户堆栈、运行数据也都放在SDRAM中。SDRAM的存储单元可以理解为一个电容,总是倾向于放电,为避免数据丢失,必须定时刷新(充电)。因此,要在系统中使用SDRAM,就要求微处理器具有刷新控制逻辑,或在系统中另外加入刷新控制逻辑电路,特别的情况是在系统失电后,要采取一种有效的机制确保将sDRAM中的数据写入F1ash中。

    2 基于掉电保护方案的硬件设计

    图1是一种典型的嵌入式系统硬件设计方案。系统的微处理器采用S3c4510B,是基于ARM7体系结构的。SDRAM是一种易失性存储器作为程序的运行空间,类似于PC机的内存;Flash作为程序存储空间是非易失性的。程序运行过程中的数据往往缓存在sDRAM中,在系统失电时必须写往Flash。

 

    在系统中,需要使用5V和3.3V的直流稳压电源。其中,S3C4510B及部分外围器件需3.3V电源,另外部分器件需5V电源。为简化系统电源电路的设计,要求整个系统的输入电压为高质量的5V的直流稳压电源。有别于一般的电源回路设计,本系统的电源回路设计过程中增加了有关掉电保护的设计。包含这个设计的系统电源电路如图2所示。

    这个电源回路除了可以提供5v和3.3v的电源以外,还为系统掉电保护提供了延时及预警功能,通过软件的配合可以实现系统的掉电保护机制。正常情况下,由供电回路1给整个系统供电。当系统由于意外原因掉电时,由于输入的比较电压降低,这样MAX809 模块输出电压产生翻转为系统提供掉电中断预警信号,中断请求通过外部中断引脚XREQ0产生;同时供电回路2开始启用。通过大电容C3、c4放电,继续为系统提供一段供电电压,支持掉电中断服务程序完成。供电回路2只给最小系统供电,并不给耗电量大的外围部件供电。这样,给最小系统的供电时间足够长,可以完成敏感数据的保护操作。

    通过软件测算,电容放电可供最小系统工作时间在0.5~4.5S之间。这种测算方法很简单.编写一个掉电中断服务子程序,这个程序只是不断进行时间刷新操作。同样,可以通过软件测定在这段时间里向Flash擦写2~3MB。可见,在采用这种硬件体制的情况下,系统掉电保护能够得到可靠的保证。

    3 掉电信号处理软件方法的实现

    在μClinux系统下,掉电信号的捕捉有两种方式可以进行。一种是运用系统调用,即采用void(*signal(intslg,void(*func)(int)))(int)。这个函数可以为特定的中断信号安排制订的执行函数,用参数func传递。在μCllnux中,共有31个系统中断信号,其中掉电信号为SIGPWR。假设掉电中断服务处理程序为void interrupt-service(int),则中断服务与信号关联的方式为:signal(SIGPWR,interrupt_service)。这种方式充分利用系统调用,实现简单。在掉电保护方案设计初期也是采用这种机制。但事实证明这种机制并不可靠,其原因是Linux内核产生和管理信号的机制并不完善,有可能存在信号丢失。查阅有关Unix或L1nux的相关资料,可以发现这种状况也普遍存在于某些其他版本的Linux和Unix中。

    另一种方式是采用守候进程的方式,开通一个进程,此进程专门等待中断信号。主程序根据数据操作对象的不同,将自己的流程方案划分成若干原子操作,所谓原子操作即划定的程序块要么完全执行,要么不执行。每个操作对应惟一状态标志。在每个原子操作前,主进程都将会通过管道通信的方式阅读中断信号。如果中断信号产生,主进程首先保存状态标志,然后将相关数据写往Flash后退出,电源恢复后,主进程首先根据标志字确定系统恢复方案。图3用流程图的方式实现这一过程。


    下面是实现这一过程的程序片断:

    结语

    基于该方案设计的税控收款机在实际运行过程中,掉电保护功能完备。此掉电保护设计方法应用对象基于ARM和μClinux构建的嵌入式系统,在32位嵌入式系统开学中具有典珏型代表意义。因此在嵌人式系统设计中具有推广价值。

关键字:掉电保护  嵌入式系统  ARM7 编辑:探路者 引用地址:掉电保护在嵌入式系统中的设计应用

上一篇:新数字电源模块在高端应用中提供优点
下一篇:动态LED显示系统

推荐阅读最新更新时间:2023-10-18 16:25

基于ARM7 μC/OSII的数据采集系统设计
在一些工业现场中,设备长时间运行容易出现故障,为了 监控 这些设备,通常利用数据采集装置采集他们运行时的数据并送给 PC 机,通过运行在PC机上的特定软件对这些数据进行分析,以此判断当前运行设备的状况,进而采取相应措施。当前常用的数据采集装置,在其系统软件设计中,多采用单任务顺序机制。这样就存在系统安全性差的问题。这对于稳定性、实时性要求很高的数据采集装置来说是不允许的,因此有必要引入嵌入式操作系统。笔者以μC/OSII为操作系统平台,基于ARM7系列处理器,对一种高性能的数据采集系统开发进行了探索。 1μC/OSII嵌入式操作系统简介 嵌入式操作系统μC/OSII(microcontroller operatin
[应用]
嵌入式系统在电力变压器监测中的应用
    电力设备的状态监测与故障诊断是近10年来备受关注的研究和实施领域,是保障电力系统稳定可靠运行的前提,也是智能电网 重点研究和发展的领域之一。在电力系统中,诸如发电机、水轮机、励磁和调速系统、继电保护等,均已全部或部分实现了状态监测和故障诊断。然而,电力变压器(尤其是配电系统中)却是无人问津的荒地,完全未纳入监测、故障诊断和预警服务的范围。     电力设备在线运行状态监测指对设备的运行状态进行记录、分类和评估,它为设备维护、维修提供决策依据,为设备积累完整和真实的运行记录资料,为故障分析和诊断提供真实依据,为故障预防和处理提供科学依据,它包括以下任务:     (1)积累设备运行情况资料和数据,建立设备运行的历史档
[嵌入式]
基于嵌入式系统在电网远程监控中的应用
随着计算机技术的发展、生产过程自动化水平的提高,用户对电网监控系统的要求越来越高,对供电系统的监控和管理已成为保障企业生产、居民生活的重要因素。减少故障停电时间及次数,确保供电的可靠性、实时监测电网参数、改善电网质量,是供电系统自动化的主要任务。但由于早期的电力监测系统网络特性差,在整个电力网络中系统之间难以完成电力数据的通信,从而影响到整个电网的质量检测及优 化控制。 针对以上问题,本文研发了一套电网远程监控系统,以适应对电力质量管理的新的需求。本系统可实现对电网参数的主动测量、分析、自动存储等功能,通过Internet光纤环网将电网监测数据传送到调度室的监控主机,工作人员可以对远程设备的运行状况进行及时、准确的监控,对其故障先
[单片机]
基于<font color='red'>嵌入式系统</font>在电网远程监控中的应用
使用AADL语言分析和设计嵌入式系统
  在设计关键任务和实时性系统时,设计师必须满足功能性要求和非功能性属性,如性能(吞吐量和服务质量)、保护、可靠性、时间紧迫性、安全和容错等,这些系统级特性具体取决于系统架构。随着嵌入式软件系统的硬件多样性和复杂性的不断提高,可以采用模型驱动的开发方法来满足开发早期阶段出现的系统集成问题。基于模型的设计方法的要点之一是要选择合适的设计语言来描述具体平台架构。   为了调整系统架构,设计语言必须支持多种分析方法以便进行跨领域的权衡,架构设计语言还必须支持开发过程中的增量分析以及用于系统评估的多级逼真度。这种增量特性允许架构规范在整个生命周期内都有效。   架构分析与设计语言(AADL)是一种可以满足这些要求的可扩展的标准
[安防电子]
手持式设备掉电保护的电源后备方案
  引言   手持式电子设备在我们的日常生活中起着重要的作用。但是,不管多少谨慎的工程设计都无法避免他们在用户手中遭遇"粗暴对待".例如:当工厂里的工人失手跌落一个条形码扫描仪而导致电池跳出时,会发生什么? 此类事件用电子学的方法是不能预知的,而且在未提供某种形式的"安全网"(一种存储了充足能量的短期电源保持系统,用于提供备用电源,直到可以更换电池或者能将数据存储到永久性存储器中为止) 之情况下,保存在易失性存储器中的重要数据将会丢失。   超级电容器具有紧凑、坚固和可靠的特点,并能支持用于应对短期 掉电 过程中后备系统的电源要求。与电池相似,它们也需要在输出端进行谨慎的充电和功率调节。LTC3226是一款具有一个电源通路(Pow
[电源管理]
手持式设备<font color='red'>掉电</font><font color='red'>保护</font>的电源后备方案
基于ARM控制器LPC2214的嵌入式系统研究与开发
1 嵌入式系统与ARM 嵌入式系统以应用为中心、以计算机技术为基础。ARM(Advanced RSIC Machines)是一家出售芯片设计技术授权的公司,目前其设计的ARM微处理器占据了32位RISC(Reduced Instruction Set Computing)微处理器75%以上的市场份额。 2 ARM体系结构 ARM已经从V3发展到V6。目前流行的ARM芯片内核有ARM7TDMI、StrongARM、ARM720T、ARM9TDMI、ARM922T、ARM940T、ARM946T、ARM966T、ARM10TDMI等。Philips LPC2214(以下简称LPC2214) 是基于ARM7TDMI-S的
[单片机]
基于ARM控制器LPC2214的<font color='red'>嵌入式系统</font>研究与开发
嵌入式系统中的IIS音频接口技术的研究
  1 IIS总线   IIS(Integrate InteRFace of Sound)即集成音频接口,在上个世纪80年代首先被Philips公司用于消费产品的音频设备,并在一个称为LRCLK(Left/Right CLOCK)的信号机制中经过多路转换,将两路音频信号合成单一的数据队列。当LRCLK为高时,左声道数据被传输;LRCLK为低时,右声道数据被传输(也可以反过来,高低与左右声音的对应可以自定义)。对于多通道系统,在同样的BCLK和LRCLK条件下,并行执行几个数据队列也是可能的。由于IIS、PCM和类似的音频接口不能提供寄存器入口,因此需要独立的控制接口。   IIS总线一般具有4根信号线,如图1所示,包括串行
[嵌入式]
基于ARM7的LED回流焊机温控系统的设计
插件UD的耗材和人工成本高,严重影响了LED高效节能灯的推广应用;而贴片封装LED元件更适合自动化焊接,焊接时在大于其100.200倍的铝基散热片上,要求较低的焊接温度,较好的散热效果,现有的自动回流焊机和焊接工艺不能满足其要求,焊接设备不配套成为u?D照明灯发展.推广的瓶颈. 本文设计了一种基于ARM7的嵌入式u C/OS-II实时操作系统的LED回流焊机温度控制系统.本产品能预设八条曲线,每一条曲线有五个段,每一段的加热时间可改动.用户可根据焊料所需的加热温度和时间来从重新设置加热曲线.本温控系统的硬件.软件设计如下. 1硬件平台设计 本系统选用Philips公司的AItM7(LPC2148)作为控制系统的核心处理器.本系统主
[电源管理]
基于<font color='red'>ARM7</font>的LED回流焊机温控系统的设计
小广播
最新电源管理文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved