单片机掉电保护)总结_第1页
单片机掉电保护)总结_第2页
单片机掉电保护)总结_第3页
单片机掉电保护)总结_第4页
单片机掉电保护)总结_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机应用系统断电时的数据保护方法 在测量、控制等领域的应用中,常要求单片机内部和外部 RAM 中的数据在电源 掉电时不丢失,重新加电时,RAM 中的数据能够保存完好,这就要求对单片机 系统加接掉电保护电路。掉电保护通常可采用以下三种方法:一是加接不间断 电源,让整个系统在掉电时继续工作,二是采用备份电源,掉电后保护系统中 全部或部分数据存储单元的内容;三是采用 EEPROM 来保存数据。由于第一种方 法体积大、成本高,对单片机系统来说,不宜采用。第二种方法是根据实际需 要,掉电时保存一些必要的数据,使系统在电源恢复后,能够继续执行程序, 因而经济实用,故大量采用1。EEPROM 既具有 ROM 掉电不丢失数据的特点, 又有 RAM 随机读写的特点。但由于其读写速度与读写次数的限制,使得 EEPROM 不能完全代替 RAM。下面将介绍最常用的一些掉电保护的处理方法,希望能对 相关设计人员在实际工作中有所帮助。 1 简单的 RAM 数据掉电保护电路 在具有掉电保护功能的单片机系统中,一般采用 CMOS 单片机和 CMOS R AM。CMOS 型 RAM 存储器静态电源小,在正常工作状态下一般由电源向片外 RAM 供电,而在断电状态下由小型蓄电池向片外 RAM 供电,以保存有用数据,采用 这种方法保存数据,时间一般在 35 个月2。然而,系统在上电及断电过程 中,总线状态的不确定性往往导致 RAM 内某些数据的变化,即数据受到冲失。 因此对于断电保护数据用的 RAM 存储器,除了配置供电切换电路外,还要采取 数据防冲失措施,当电源突然断电时,电压下降有个过程,CPU 在此过程中会 失控,可能会误发出写信而冲失 RAM 中的数据,仅有电池是不能有效完成数据 保护的,还需要对片选信号加以控制,保证整个切换过程中 CS 引脚的信号一直 保持接近 VCC。通常,采用在 RAM 的 CS 和 VCC 引脚之间接一个电阻来实现 COMS RAM 的电源切换,然而,如果在掉电时,译码器的输出出现低电平,就可能出 现问题,图 1 给出一种简单的电路设计,它能够避免上述问题的产生。 图 1 中,4060 开关电路起到对 CS 控制的作用。当电压小于等于 4.5V 时就使开关断开,CS 线上拉至“1“,这样,RAM 中的数据就不会冲失;当电压大 于 4.5V 时,4060 开关接通,使 RAM 能正常进行读写。 2 可靠的 RAM 掉电保护电路 上述的电路虽然简单,但有时可能起不到 RAM 掉电保护的作用,原因是 在电源掉电和重新加电的过程中,电源电压跃变的干扰可能使 RAM 瞬间处于读 写状态,使原来 RAM 中的数据遭到破坏,因此,在掉电刚刚开始以及重新加电 直到电源电压保持稳定下来之前,RAM 应处于数据保持状态,6264 RAM、5101 RAM 等 RAM 芯片上都有一个 CE2 引脚,在一般情况下需将此引脚拉高,当把该 引脚拉至小于或等于 0.2V 时,RAM 就进入数据保持状态。 实用的静态 RAM 掉电保护电路如图 2 所示,图 2 中 U1、U2 为电压比较 器,稳压管 D3 提供一个基准电压 Vr(Vr3.5V)。当 Vcc 为 5V 时,在 R4 上 得到的分压大于 Vr,U2 输出高电平,又因为 U4 输出也为高电平,故 CE2 输出 为高电位,单片机此时可对 RAM 进行存取,当电源掉电时,Vcc 开始下降,当 满足如下条件时: R4Vcc/(R4R3)/(R5R6)Vr U2 输出低电平,通过 U5 和 U6 使 CE2 输出小于等于 0.2V,RAM 进入数 据保持状态(按图 2 中元件参数代入上式,当 Vcc 降到 4.7V 时,U2 输出为低 电位)。若 Vcc 继续下降使 U3 翻转,再通过 D4、U4 和 U6 进一步保证 CE2 为低 电平。此外,当 Vcc 下降到小于 E 时,D2 截止,D1 导通,这时 E 作为 RAM 的备 份电源,当单片机重新加电时,Vcc 由 0 跃变到 5V 时,U2 的输出端会出现瞬间 的干扰脉冲,由于 U3 和 U4 间电路的积分延迟(约 0.7RC),CE2 并不立即升到 高电平,因而阻止了 U2 的干扰脉冲,当延时结束时,电源电压已稳定在 5V, 此后 CE2 升高,单片机便可对 RAM 进行存取。图 2 中 U3 和 U6 为一块四施秘特 与非门(CD4093),该电路直接由 E 供电,这样才能保证掉电后使 CE20.2V ,并在重新加电时 CE2 不受电源电压跃变的干扰,比较器 U1 和 U2 为电源供电 ,Vcc 为后备电源 U1 的电压监视电路,当后备电池快用完时(小于 3.5V),发 光管会发出亮光,表明要换上新电池,备份电源可用 3 节 5 号干电池,也可以 采用锂电池或镍电池。 3 利用 TL7705 对现场数据进行保护 单片机构成的应用系统在突然断电时,往往使片内 RAM 数据遭到破坏, 下面介绍一种利用 TL7705 构成的电源监控电路,使单片机系统在掉电时自动保 护现场数据。 3.1 TL7705 的工作原理 TL7705 是电源监控用集成电路,采用 8 脚双列直插式封装,其内部结 构图 3 所示。图 3 中,基准电压发生器具有较高的稳定性,可由 1 脚输出 2.5V 基准电压,为了吸收电源的同脉冲干扰,通常在 1 脚上接一个 0.1F 的滤波电 容来提高其抗干扰能力,被监控的电源电压由 SENSE 端 7 脚引入,经过 R1 和 R 2 分压后送入比较器 CMP1,与基准电压进行比较,当其值小于基准电压时,T1 导通,定时电容 CT 通过 T1 放电,使 CMP2 比较器翻转,T2 和 T3 导通,输出脚 RESET 为高电平,SESET 反为低电平,当送入 CMP1 比较器的电压高于基准电压 时,T1 截止 100A 恒流源给 CT 充电,当 CT 上的电压高于 2.5V 时,CMP2 比较 器翻转,T2 和 T3 截止,RESET 和 RESET 反输出关断。 3.2 TL7705 与 80C51 单片机的接法 在某些单片机应用系统中需要在系统掉电时记忆当前现场状态,以使电 源恢复后能继续从断电处运行,图 4 是以 80C51 单片机为例采用其空闲方式或 掉电方式,在备用电池支持下实现掉电后的数据保护。 图 4 中,R1、C1 和 74LSO4 构成单片机的上电自动复位和手动按钮复位 电路,备用电池 P1 及 D1、D2 实现掉电时备用电池的切换。电源正常时 D1 不导 通,5V 直接给单片机供电,并为电池 P1 充电,为了减小电池耗电,备用电 池只给单片机供电,保护片内 RAM 中的数据,电源掉电后,其他外围电路的工 作电压仅靠电源电容维持很短的时间,电位器 RW 用来调节检测电压,范围为 4.54.75V,当掉电时,外围电路的电压下降到门限设定电压时,可将片外 RAM 中需要保护的数据写入片内 RAM 中,并使单片机进入掉电工作方式以完成 数据保护,为了保证单片机有足够的处理时间,取检测电压为 4.75V,当电源 电压降至 4.75V 时,TL7705 由 RESET 反向单片机发出中断请求信号(INTO 反)。 单片机运行到一个可断断点后,相应中断,在中断服务程序中保护现场数据, 使单片机进入掉电工作状态。 4 采用软件冗余措施保证数据的准确性 最常用的一种方法是采用软件冗余措施,即将欲保护的数据写入 RAM 中 的不同区域,如 0000H00FFH、0100H01FFH 和 0200H02FFH 这三个区域存 储同样一组数据,当使用这些数据前,先对各组进行检查,对于正确的数据方 可应用,同时将错误的数据进行修正,在上电与断电过程中,总线不确写性是 随机的,不可将所有数据完全冲失。采用硬件对数据进行断电保护,同时在软 件上采用冗余的措施是最常用的数据保护方法,在断电突然发生时可保证数据 的准确无误。 网路文章:/html/avr/11103.html 我想在掉电时保存数据(3 个字节)到 EEPROM 中,用 BOD 掉电检测,不知怎样 使用。望高手指点: 1。在 BOOT 区设置好 BODEN,BODLEVEL,后软件还要怎样设置? 2。掉电中断是否是产生复位?我的写 EEPROM 程序应该放在什么地方?他和其 他复位怎样区别? 3。设置了 BOOT 区后,硬件上是否要加电源到一个管脚比较后才产生中断? = = 掉电检测 BOD 的误解 AVR 自带的 BOD(Brown-out Detection)电路,作用是在电压过低(低于设定值) 时产生复位信号,防止 CPU 意外动作. 对 EEPROM 的保护作用是当电压过低时 保持 RESET 信号为低,防止 CPU 意外动作,错误修改了 EEPROM 的内容 而我们 所理解的掉电检测功能是指 具有预测功能的可以进行软件处理的功能。 例如,用户想在电源掉电时把 SRAM 数据转存到 EEPROM,可行的方法是 外接一个在 4.5V 翻转的电压比较器(VCC=5.0V,BOD=2.7V),输出接到外部中断 引脚(或其他中断) 一但电压低于 4.5V,马上触发中断,在中断服务程序中把数据写到 EEPROM 中保 护起来 注意: 写一个字节的 EEPROM 时间长达 8mS,所以不能写入太多数据,电源滤波 电容也要选大一些 = = 将 AVR 的 BOD 设为 2.7V,从 4.5v 到 2.7 这段时间写 EEPROM。AVR 的供电采用 14 楼方案,掉电检测使用 IMP809。 软件编写思路请参考我的M128书是第 5 章,或 10 月出版的书的第 7 章。参 考电路如下: 在图中,外部 9V 电源通过 7805 稳压到 5V,作为系统电源使用。而 AVR 的工作 电源则是单独提供的,由 5v 系统电源通过低压差肖特基二极管 1N5817 后得到。 IN5817 的正向压降为 0.3v,因此,AVR 的工作电压为 4.7v。电源监控芯片 IMP809-L 的监控电压为 4.63V,当系统电源的电压低于 4.63V 时,在 R 脚上产 生由高电平到低电平的变化,使 AVR 进入 INT0 中断。 该电路的工作原理为:首先通过配置 AVR 的熔丝位,设置 BOD 掉电检测电压门 限为 2.7V,并允许 BOD 检测。因此,当 AVR 的 Vcc 电压掉到 2.7v 以下时,AVR 就停止工作(掉电检测功能是 AVR 片内的功能之一,见第二章的 2.6.2 AVR 的 复位源和复位方式)。电源监控芯片 IMP809-L 检测电压门限为 4.63v,用于检 测系统电源的电压。当系统电源大于 4.63v 时,IMP809-L 的 R 端输出高电平, 整个系统正常工作。当系统电源的电压跌到 4.63v 以下时,IMP809-L 的 R 脚输 出低电平,作为 AVR 外部中断 INT0 的申请。INT0 设计为掉电处理中断,其主 要任务是备份系统运行的重要数据到 EEPROM 中。 在提供 AVR 工作的电源系统中,大容量的电解电容 C5 作为储能电容,一旦 系统电源电压下降,二极管 1N5817 截止,此时 AVR 可以靠 C5 提供的电储可以 继续工作一段时间。C5 容量应足够大,在系统电源掉电过程中,IMP809-L 的 R 端输出低电平(下降到 4.63v)时,要能够保证维持 AVR 的工作电压 Vcc 从 4.7v 降到 2.7V 的时间超过 300ms,使 AVR 有时间做紧急处理和备份数据。AVR 写 EEPROM 大约需要 50-100mA 的电流,所以电容 C5 的值应该在 1000u4700u,需要保存的数据越多,C5 的容量应该越大。 INT0 是 AVR 优先级最高的中断,采用外部电平变化的下降沿触发方式。一 旦 IMP809-L 的 R 脚电平由正常的高电平变为低电平时,将触发 INT0 中断,进 入 INT0 掉电中断服务程序。 在 INT0 掉电保护中断服务程序中,应按以下的步骤和过程处理: A)紧急处理,关闭所有外部器件的工作,或将外部状态设置到安全模式,如关 闭马达、开关等,保证系统不出事故。 B)将 AVR 所有 I/O 设置为输入方式,最大程度的减少 AVR 芯片对电源的消耗。 C)将重要数据写入到 EEPROM 中。 D)循环检测 INT0 引脚是否恢复高电平。如为高电平则转到下一步 E 执行;如果 INT0 电平一直为低,程序将在此循环,直到完全停止运行(因为储能电容 C5 的电压低于 2.7v 后,AVR 的 BOD 起作

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论