单片机掉电保护总结修订稿
单片机掉电保护)总结

单片机应用系统断电时的数据保护方法在测量、控制等领域的应用中,常要求单片机内部和外部RAM中的数据在电源掉电时不丢失,重新加电时,RAM中的数据能够保存完好,这就要求对单片机系统加接掉电保护电路。
掉电保护通常可采用以下三种方法:一是加接不间断电源,让整个系统在掉电时继续工作,二是采用备份电源,掉电后保护系统中全部或部分数据存储单元的内容;三是采用EEPROM来保存数据。
由于第一种方法体积大、成本高,对单片机系统来说,不宜采用。
第二种方法是根据实际需要,掉电时保存一些必要的数据,使系统在电源恢复后,能够继续执行程序,因而经济实用,故大量采用[1]。
EEPROM既具有ROM掉电不丢失数据的特点,又有RAM随机读写的特点。
但由于其读写速度与读写次数的限制,使得EEPROM不能完全代替RAM。
下面将介绍最常用的一些掉电保护的处理方法,希望能对相关设计人员在实际工作中有所帮助。
1 简单的RAM数据掉电保护电路在具有掉电保护功能的单片机系统中,一般采用CMOS单片机和CMOS RAM。
CMOS型RAM存储器静态电源小,在正常工作状态下一般由电源向片外RAM供电,而在断电状态下由小型蓄电池向片外RAM供电,以保存有用数据,采用这种方法保存数据,时间一般在3-5个月[2]。
然而,系统在上电及断电过程中,总线状态的不确定性往往导致RAM内某些数据的变化,即数据受到冲失。
因此对于断电保护数据用的RAM存储器,除了配置供电切换电路外,还要采取数据防冲失措施,当电源突然断电时,电压下降有个过程,CPU在此过程中会失控,可能会误发出写信而冲失RAM中的数据,仅有电池是不能有效完成数据保护的,还需要对片选信号加以控制,保证整个切换过程中CS引脚的信号一直保持接近VCC。
通常,采用在RAM的CS和VCC引脚之间接一个电阻来实现COMS RAM的电源切换,然而,如果在掉电时,译码器的输出出现低电平,就可能出现问题,图1给出一种简单的电路设计,它能够避免上述问题的产生。
基于单片机掉电保护电路的设计

基于单片机掉电保护电路的设计随着电子设备的普及和应用,人们对电子设备的使用要求也越来越高。
电子设备在设计和应用中,一个重要的问题就是如何保护设备在突发情况下不受损坏,特别是在掉电的情况下。
掉电是指突然停止供电,可能会导致设备异常运行或数据丢失。
为了避免这种情况的发生,我们需要设计一种掉电保护电路。
单片机是一种集成电路,包含有微处理器、存储器、定时器等功能,广泛应用于电子设备中。
基于单片机的掉电保护电路的设计是为了防止在电源突然中断的情况下,单片机无法正常工作或数据丢失的问题。
本文将从设计的需求、实现原理、电路结构、性能评价等方面探讨基于单片机的掉电保护电路的设计。
首先,设计基于单片机的掉电保护电路需要考虑的主要需求包括两个方面:一是在电源正常供电时,保障单片机正常工作;二是在掉电的情况下,保护单片机和相关数据不受损坏。
为了实现这两个需求,我们需要设计一个能够监测电源状态,并在掉电时及时切断与单片机之间的电源连接的电路。
掉电保护电路的实现原理主要包括两个方面:一是探测电源供电状态;二是控制开关切断电源连接。
为了实现对电源供电状态的探测,我们可以采用电压比较器等电路进行电压监测,当监测到电源电压低于一定阈值时,说明电源可能已经掉电,可以触发掉电保护措施。
在掉电保护措施中,我们需要设计一个开关电路,通过单片机的控制,及时切断电源与单片机之间的连接,以保护单片机的正常工作和数据的完整性。
同时,为了保证电路的可靠性和稳定性,还需要考虑一些电路保护和故障处理的机制。
基于以上原理,我们可以设计一个基于单片机的掉电保护电路的具体结构。
该电路主要包括电源供电状态监测模块、掉电保护触发模块、开关切断模块等部分。
电源供电状态监测模块通过电压比较器等电路实现对电源供电状态的监测;掉电保护触发模块通过单片机控制实现对掉电状态的识别和保护触发;开关切断模块通过继电器或场效应管等元件实现电源连接的切断。
整个电路结构紧凑、功能完善,可以有效保护单片机在掉电情况下的安全运行。
一种高可靠性的单片机掉电保护设计

第29卷第4期武汉科技大学学报(自然科学版)Vol .29,No .42006年8月J.ofW uhan Uni .of Sci .&Tech .(Natural Science Editi on )Aug .2006 收稿日期:2005-11-09 作者简介:王朝辉(1967-),男,武汉科技大学计算机科学与技术学院,副教授.一种高可靠性的单片机掉电保护设计王朝辉,陆 枫(武汉科技大学计算机科学与技术学院,湖北武汉,430081)摘要:通过对几种掉电保护方法的分析对比,给出了一种简单可靠、通用于单片机系统的掉电保护电路;详细地介绍了单片机掉电保护电路的设计原理及硬、软件实现方法,分析了其可靠性。
关键词:单片机;掉电保护;I M P706SCS A;掉电检测中图分类号:TP368.1 文献标志码:A 文章编号:1672-3090(2006)04-0401-04A H i ghly Reli a ble D esi gn of Power 2fa il Protecti on for SCMWAN G Zhao 2hui,LU Feng(College of Computer Science and Technol ogy,W uhan University of Science and Technol ogy,W uhan 430081,China )Abstract :By analyzing and contrasting several power 2fail p r otecti on circuits in SC M ,the paper puts f or ward a si m p le and reliable power 2fail p r otecti on sche me for SC M.It discusses the design of power 2fail p r otecti on cir 2cuit for SC M fr om hard ware and s oft w are,and analyzes the credibility of power 2fail p r otecti on in detail .Key words :SC M;power 2fail p r otecti on;I M P706SCS A;power 2fail detecti on 以单片机为核心的实时数据采集系统和智能终端已广泛应用于很多领域,这些对数据安全性要求较高的单片机应用系统,常常要求存储器(RAM )中的数据在电源掉电时不被丢失,重新加电后系统能恢复原来的工作状态。
单片机系统中RAM数据掉电保护的处理方法

单片机系统中RAM数据掉电保护的处理方法在测量、控制等领域的应用中,常要求单片机内部和外部RAM中的数据在电源掉电时不丢失,重新加电时,RAM中的数据能够保存完好,这就要求对单片机系统加接掉电保护电路。
掉电保护通常可采用以下三种方法:一是加接不间断电源,让整个系统在掉电时继续工作,二是采用备份电源,掉电后保护系统中全部或部分数据存储单元的内容;三是采用EEPROM来保存数据。
由于第一种方法体积大、成本高,对单片机系统来说,不宜采用。
第二种方法是根据实际需要,掉电时保存一些必要的数据,使系统在电源恢复后,能够继续执行程序,因而经济实用,故大量采用[1]。
EEPROM既具有ROM掉电不丢失数据的特点,又有RAM随机读写的特点。
但由于其读写速度与读写次数的限制,使得EEPROM不能完全代替RAM。
下面将介绍最常用的一些掉电保护的处理方法,希望能对相关设计人员在实际工作中有所帮助。
1 简单的RAM数据掉电保护电路在具有掉电保护功能的单片机系统中,一般采用CMOS单片机和CMOS RAM。
CMOS型RAM存储器静态电源小,在正常工作状态下一般由电源向片外 RAM供电,而在断电状态下由小型蓄电池向片外RAM供电,以保存有用数据,采用这种方法保存数据,时间一般在3-5个月[2]。
然而,系统在上电及断电过程中,总线状态的不确定性往往导致RAM内某些数据的变化,即数据受到冲失。
因此对于断电保护数据用的RAM存储器,除了配置供电切换电路外,还要采取数据防冲失措施,当电源突然断电时,电压下降有个过程,CPU在此过程中会失控,可能会误发出写信而冲失RAM中的数据,仅有电池是不能有效完成数据保护的,还需要对片选信号加以控制,保证整个切换过程中CS引脚的信号一直保持接近VCC。
通常,采用在RAM的CS 和VCC引脚之间接一个电阻来实现 COMS RAM的电源切换,然而,如果在掉电时,译码器的输出出现低电平,就可能出现问题,图1给出一种简单的电路设计,它能够避免上述问题的产生。
单片机系统中的掉电检测与数据存储问题

5)理论Байду номын сангаас算
(1)按恒流充放电的简化计算:Q = CV = IT.Q是电量,C是电容量,V是电压,I是电流,T是时间
那么T=CV/I,在本例中可以估算时间为 T= 0.0033f*(5.0V-3.8V) / 0.012A = 0.33s,即330ms.
330/8.5 = 38.8mS,即最多可以保存38字节数据到EEPROM中,38字节对于本应用已经足够。
1)总体思路
由于电能表的计量是要求持续性的,而主供电系统不可能是持续的,注意这里需要一个掉电检测与数据存储的问题。首先检测出供电系统已经断电,然后启用备用电源存储数据,而且数据必须存储在掉电不易失的存储器(如EEPROM,FLASH等)中。
本应用中,需要检测出掉电后备用电源能提供足够的电能供单片机进行数据存储。总体思路,本应用中单片机采用的是STC89C58RD+,单片机内部已经集成了16K的EEPROM,所以不需要另外外接存储器。ADE7755已经自带了电源监控功能,前面的ADE7755的介绍中已经有所描述,所以亦无须担心。这里只需要解决好单片机的掉电问题即可。在系统的稳压前端设置监测点,当监测点的电压下降到另一个基准比较电压时产生单片机外部中断。当单片机接收到外部中断后启动数据存储程序,将数据存储到片内EEPROM内。当主供电系统恢复供电后,单片机首先读取EEPROM数据,然后再恢复计数。
3)备用电源
虽然备用电源可以采用可充电电池,大电容等方案,但由于这里所需要的电量并不是很大,持续时间也不需要很长,只需要能完成数据存储即可。所以这里选择了大电容作为备用电源这一方案。选择了在稳压后端与单片机电源端直接并联了两个达3300uF的大容量电解电容。同时,为安全起见,在单片机的电源输入端还串入了一个低正向压降压降的二极管来阻止大电容向除单片机意外的其他电路放电。
单片机中的掉电存储问题

利。不仅思路清晰,而且便于模块化管理自己的程序。
现在,我们创建两个文件,分别为 NV.h 和 NV.C,h 文件作为 NV 管理的模块。NV.h 中
我们来定义 NV 变量的数据结构(即笔者所认为的类的属性)和声明对 NV 操作的函数。
#ifndef _NV_
#define _NV_
//NV 操作的状态定义
做到尽量把我们这个 NV 操作模块从我们编写的其他应用程序中抽象出来。
那么,接下来,我们就来编写 NV16 变量的操作函数。在 NV.C 中,我们添加两个函数,
一个是获取 NV 变量的值,另一个是修改 NV 变量的值。
#include "NV.h"
#include "24CXX.h"
#define CheckTimes
u32 AT24CXX_ReadLenByte(u16 ReadAddr,u8 Len)
{
u8 t;
u32 temp=0;
for(t=0;t<Len;t++)
{
temp<<=8;
temp+=AT24CXX_ReadOneByte(ReadAddr+Len-t-1);
}
return temp;
}
//在 AT24CXX 里面的指定地址开始写入长度为 Len 的数据
函数,旨在表明这种方法的思路。具体读者可以根据自己的使用环境,自己改进。
首先,说明下笔者的编程习惯,笔者在编写单片机 C 程序的过程中,往往喜欢把程序中
涉及的东西封装成类似于面向对象思想中的类。把数据结构假想成类的属性,把对相应数据
结构操作的函数,假想成类的方法。这种方法在实际编程过程中,往往给自己带来很大的便
单片机掉电保护总结

单片机应用系统断电时的数据保护方法在测量、控制等领域的应用中,常要求单片机内部和外部RAM中的数据在电源掉电时不丢失,重新加电时,RAM中的数据能够保存完好,这就要求对单片机系统加接掉电保护电路。
掉电保护通常可采用以下三种方法:一是加接不间断电源,让整个系统在掉电时继续工作,二是采用备份电源,掉电后保护系统中全部或部分数据存储单元的内容;三是采用EEPROM来保存数据。
由于第一种方法体积大、成本高,对单片机系统来说,不宜采用。
第二种方法是根据实际需要,掉电时保存一些必要的数据,使系统在电源恢复后,能够继续执行程序,因而经济实用,故大量采用[1]。
EEPROM既具有ROM掉电不丢失数据的特点,又有RAM随机读写的特点。
但由于其读写速度与读写次数的限制,使得EEPROM 不能完全代替RAM。
下面将介绍最常用的一些掉电保护的处理方法,希望能对相关设计人员在实际工作中有所帮助。
?1简单的RAM数据掉电保护电路在具有掉电保护功能的单片机系统中,一般采用CMOS单片机和CMOSRAM。
CMOS型RAM存储器静态电源小,在正常工作状态下一般由电源向片外RAM供电,而在断电状态下由小型蓄电池向片外RAM供电,以保存有用数据,采用这种方法保存数据,时间一般在3-5个月[2]。
然而,系统在上电及断电过程中,总线状态的不确定性往往导致RAM内某些数据的变化,即数据受到冲失。
因此对于断电保护数据用的RAM存储器,除了配置供电切换电路外,还要采取数据防冲失措施,当电源突然断电时,电压下降有个过程,CPU在此过程中会失控,可能会误发出写信而冲失RAM中的数据,仅有电池是不能有效完成数据保护的,还需要对片选信号加以控制,保证整个切换过程中CS引脚的信号一直保持接近VCC。
通常,采用在RAM的CS和VCC引脚之间接一个电阻来实现COMSRAM的电源切换,然而,如果在掉电时,译码器的输出出现低电平,就可能出现问题,图1给出一种简单的电路设计,它能够避免上述问题的产生。
基于单片机掉电保护电路的设计

基于单片机掉电保护电路的设计在当前的电子设备中,由于单片机的应用越来越广泛,单片机掉电保护电路的设计变得越来越重要。
随着技术的不断进步,人们对设备的要求也越来越高,对设备进行保护显得至关重要。
因此,设计一套高效可靠的单片机掉电保护电路成为了工程师们的重要任务之一。
单片机掉电保护电路的设计涉及到多个方面,其中包括电路设计、程序编写、信号传输等内容。
在实际操作中,工程师需要综合考虑多个因素,确保设计的电路既能实现预期功能,又能在电路断电情况下有效保护设备。
因此,本文将从电路设计的基本原理出发,深入探讨单片机掉电保护电路的设计过程,并以具体案例进行详细分析,希望对相关领域的工程师和研究人员有所帮助。
单片机掉电保护电路的设计首先需要考虑的是电路的基本原理。
在单片机工作时,通常需要通过外部供电来提供电源。
在一些特殊情况下,可能会出现供电异常或掉电的情况,这时需要一套保护电路来确保单片机及其周边设备不受损害。
保护电路的设计需要考虑到供电源的稳定性、保护设备的安全性以及掉电情况下的自动切换等因素,因此设计一套完善的保护电路至关重要。
在实际的设计过程中,工程师需要根据具体的应用场景来选择合适的保护电路方案。
一般来说,常见的保护电路包括过压保护、欠压保护、过流保护等。
针对单片机掉电保护电路的设计,工程师通常会采用一些特殊的方案,比如使用超级电容器进行备份电源、采用可编程电源管理芯片等。
这些方案既能保证供电的稳定性,又能在掉电的情况下及时切换至备用电源,确保设备的正常运行。
除了电路设计外,程序编写也是单片机掉电保护电路设计过程中的重要环节。
在掉电的情况下,单片机的内部数据可能会丢失,程序运行状态也会受到影响。
因此,工程师需要编写一些特殊的程序来保证单片机在掉电后能够自动恢复到上一次正常运行状态。
这需要工程师对单片机的工作原理和程序设计有深入的了解,才能编写出高效可靠的恢复程序。
另外,单片机掉电保护电路设计还需要考虑信号传输的稳定性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机掉电保护总结集团标准化工作小组 [Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]单片机应用系统断电时的数据保护方法在测量、控制等领域的应用中,常要求单片机内部和外部RAM中的数据在电源掉电时不丢失,重新加电时,RAM中的数据能够保存完好,这就要求对单片机系统加接掉电保护电路。
掉电保护通常可采用以下三种方法:一是加接不间断电源,让整个系统在掉电时继续工作,二是采用备份电源,掉电后保护系统中全部或部分数据存储单元的内容;三是采用EEPROM来保存数据。
由于第一种方法体积大、成本高,对单片机系统来说,不宜采用。
第二种方法是根据实际需要,掉电时保存一些必要的数据,使系统在电源恢复后,能够继续执行程序,因而经济实用,故大量采用[1]。
EEPROM既具有ROM掉电不丢失数据的特点,又有RAM随机读写的特点。
但由于其读写速度与读写次数的限制,使得EEPROM 不能完全代替RAM。
下面将介绍最常用的一些掉电保护的处理方法,希望能对相关设计人员在实际工作中有所帮助。
1简单的RAM数据掉电保护电路在具有掉电保护功能的单片机系统中,一般采用CMOS单片机和CMOSRAM。
CMOS 型RAM存储器静态电源小,在正常工作状态下一般由电源向片外RAM供电,而在断电状态下由小型蓄电池向片外RAM供电,以保存有用数据,采用这种方法保存数据,时间一般在3-5个月[2]。
然而,系统在上电及断电过程中,总线状态的不确定性往往导致RAM内某些数据的变化,即数据受到冲失。
因此对于断电保护数据用的RAM存储器,除了配置供电切换电路外,还要采取数据防冲失措施,当电源突然断电时,电压下降有个过程,CPU在此过程中会失控,可能会误发出写信而冲失RAM中的数据,仅有电池是不能有效完成数据保护的,还需要对片选信号加以控制,保证整个切换过程中CS引脚的信号一直保持接近VCC。
通常,采用在RAM的CS和VCC引脚之间接一个电阻来实现COMSRAM的电源切换,然而,如果在掉电时,译码器的输出出现低电平,就可能出现问题,图1给出一种简单的电路设计,它能够避免上述问题的产生。
图1中,4060开关电路起到对CS控制的作用。
当电压小于等于时就使开关断开,CS线上拉至"1",这样,RAM中的数据就不会冲失;当电压大于时,4060开关接通,使RAM能正常进行读写。
2可靠的RAM掉电保护电路上述的电路虽然简单,但有时可能起不到RAM掉电保护的作用,原因是在电源掉电和重新加电的过程中,电源电压跃变的干扰可能使RAM瞬间处于读写状态,使原来RAM中的数据遭到破坏,因此,在掉电刚刚开始以及重新加电直到电源电压保持稳定下来之前,RAM应处于数据保持状态,6264RAM、5101RAM等RAM芯片上都有一个CE2引脚,在一般情况下需将此引脚拉高,当把该引脚拉至小于或等于时,RAM就进入数据保持状态。
实用的静态RAM掉电保护电路如图2所示,图2中U1、U2为电压比较器,稳压管D3提供一个基准电压Vr(Vr=)。
当Vcc为5V时,在R4上得到的分压大于Vr,U2输出高电平,又因为U4输出也为高电平,故CE2输出为高电位,单片机此时可对RAM进行存取,当电源掉电时,Vcc开始下降,当满足如下条件时:R4×Vcc/[(R4+R3)/(R5+R6)]≥VrU2输出低电平,通过U5和U6使CE2输出小于等于,RAM进入数据保持状态(按图2中元件参数代入上式,当Vcc降到时,U2输出为低电位)。
若Vcc继续下降使U3翻转,再通过D4、U4和U6进一步保证CE2为低电平。
此外,当V cc下降到小于E时,D2截止,D1导通,这时E作为RAM的备份电源,当单片机重新加电时,Vcc由0跃变到5V时,U2的输出端会出现瞬间的干扰脉冲,由于U3和U4间电路的积分延迟(约),CE2并不立即升到高电平,因而阻止了U 2的干扰脉冲,当延时结束时,电源电压已稳定在5V,此后CE2升高,单片机便可对RAM进行存取。
图2中U3和U6为一块四施秘特(CD4093),该电路直接由E供电,这样才能保证掉电后使CE2≤,并在重新加电时CE2不受电源电压跃变的干扰,比较器U1和U2为电源供电,Vcc为后备电源U1的电压监视电路,当后备电池快用完时(小于),发光管会发出亮光,表明要换上新电池,备份电源可用3节5号干电池,也可以采用锂电池或镍电池。
3利用TL7705对现场数据进行保护单片机构成的应用系统在突然断电时,往往使片内RAM数据遭到破坏,下面介绍一种利用TL7705构成的电源监控电路,使单片机系统在掉电时自动保护现场数据。
TL7705的工作原理TL7705是电源监控用集成电路,采用8脚双列直插式封装,其内部结构图3所示。
图3中,基准电压发生器具有较高的稳定性,可由1脚输出基准电压,为了吸收电源的同脉冲干扰,通常在1脚上接一个μF的滤波电容来提高其抗干扰能力,被监控的电源电压由SENSE端7脚引入,经过R1和R2分压后送入比较器CMP1,与基准电压进行比较,当其值小于基准电压时,T1导通,定时电容C T通过T1放电,使CMP2比较器翻转,T2和T3导通,输出脚RESET为高电平,SESET反为低电平,当送入CMP1比较器的电压高于基准电压时,T1截止100μA 恒流源给CT充电,当CT上的电压高于时,CMP2比较器翻转,T2和T3截止,RESET和RESET反输出关断。
TL7705与80C51单片机的接法在某些单片机应用系统中需要在系统掉电时记忆当前现场状态,以使电源恢复后能继续从断电处运行,图4是以80C51单片机为例采用其空闲方式或掉电方式,在备用电池支持下实现掉电后的数据保护。
图4中,R1、C1和74LSO4构成单片机的上电自动复位和手动按钮复位电路,备用电池P1及D1、D2实现掉电时备用电池的切换。
电源正常时D1不导通,+5V直接给单片机供电,并为电池P1充电,为了减小电池耗电,备用电池只给单片机供电,保护片内RAM中的数据,电源掉电后,其他外围电路的工作电压仅靠电源电容维持很短的时间,电位器RW用来调节检测电压,范围为-,当掉电时,外围电路的电压下降到门限设定电压时,可将片外RAM中需要保护的数据写入片内RAM中,并使单片机进入掉电工作方式以完成数据保护,为了保证单片机有足够的处理时间,取检测电压为,当电源电压降至时,TL7705由RESET反向单片机发出中断请求信号(INTO反)。
单片机运行到一个可断断点后,相应中断,在中断服务程序中保护现场数据,使单片机进入掉电工作状态。
4采用软件冗余措施保证数据的准确性最常用的一种方法是采用软件冗余措施,即将欲保护的数据写入RAM中的不同区域,如0000H-00FFH、0100H-01FFH和0200H-02FFH这三个区域存储同样一组数据,当使用这些数据前,先对各组进行检查,对于正确的数据方可应用,同时将错误的数据进行修正,在上电与断电过程中,总线不确写性是随机的,不可将所有数据完全冲失。
采用硬件对数据进行断电保护,同时在软件上采用冗余的措施是最常用的数据保护方法,在断电突然发生时可保证数据的准确无误。
网路文章:我想在掉电时保存数据(3个字节)到EEPROM中,用BOD掉电检测,不知怎样使用。
望高手指点:1。
在BOOT区设置好BODEN,BODLEVEL,后软件还要怎样设置2。
掉电中断是否是产生复位我的写EEPROM程序应该放在什么地方他和其他复位怎样区别3。
设置了BOOT区后,硬件上是否要加电源到一个管脚比较后才产生中断===================================================================================掉电检测BOD的误解AVR自带的BOD(Brown-out Detection)电路,作用是在电压过低(低于设定值)时产生复位信号,防止CPU意外动作. 对EEPROM的保护作用是当电压过低时保持RESET信号为低,防止CPU意外动作,错误修改了EEPROM的内容而我们所理解的掉电检测功能是指具有预测功能的可以进行软件处理的功能。
例如,用户想在电源掉电时把SRAM数据转存到EEPROM,可行的方法是外接一个在翻转的电压比较器(VCC=,BOD=,输出接到外部中断引脚(或其他中断)一但电压低于,马上触发中断,在中断服务程序中把数据写到EEPROM中保护起来注意: 写一个字节的EEPROM时间长达8mS,所以不能写入太多数据,电源滤波电容也要选大一些===================================================================== ===============将AVR的BOD设为,从到这段时间写EEPROM。
AVR的供电采用14楼方案,掉电检测使用IMP809。
软件编写思路请参考我的《M128》书是第5章,或10月出版的书的第7章。
参考电路如下:在图中,外部9V电源通过7805稳压到5V,作为系统电源使用。
而AVR的工作电源则是单独提供的,由5v系统电源通过低压差肖特基二极管1N5817后得到。
IN5817的正向压降为,因此,AVR的工作电压为。
电源监控芯片IMP809-L 的监控电压为,当系统电源的电压低于时,在R脚上产生由高电平到低电平的变化,使AVR进入INT0中断。
该电路的工作原理为:首先通过配置AVR的熔丝位,设置BOD掉电检测电压门限为,并允许BOD检测。
因此,当AVR的Vcc电压掉到以下时,AVR就停止工作(掉电检测功能是AVR片内的功能之一,见第二章的 AVR的复位源和复位方式)。
电源监控芯片IMP809-L检测电压门限为,用于检测系统电源的电压。
当系统电源大于时,IMP809-L的R端输出高电平,整个系统正常工作。
当系统电源的电压跌到以下时,IMP809-L的R脚输出低电平,作为AVR外部中断INT0的申请。
INT0设计为掉电处理中断,其主要任务是备份系统运行的重要数据到EEPROM中。
在提供AVR工作的电源系统中,大容量的电解电容C5作为储能电容,一旦系统电源电压下降,二极管1N5817截止,此时AVR可以靠C5提供的电储可以继续工作一段时间。
C5容量应足够大,在系统电源掉电过程中,IMP809-L的R 端输出低电平(下降到)时,要能够保证维持AVR的工作电压Vcc从降到的时间超过300ms,使AVR有时间做紧急处理和备份数据。
AVR写EEPROM大约需要50-100mA的电流,所以电容C5的值应该在1000u~4700u,需要保存的数据越多,C5的容量应该越大。
INT0是AVR优先级最高的中断,采用外部电平变化的下降沿触发方式。