1、目录目录1摘要21引言21.1课题背景21.2指导思想21.3本设计完成的智能化功能32单片机简介32.1单片机的特点32.2单片机的应用42.3单片机应用于充电器实现智能化42.4 本设计所用的单片机芯片52.4.1 管脚定义说明53锂离子电池介绍及充电芯片MAX1898的介绍73.1锂离子电池简介73.1.1锂离子电池基本参数特性73.1.2锂离子电池的优缺点83.2MAX1898充电芯片93.2.1MAX1898的特点及充电芯片的选择理由103.2.2MAX1898的引脚构造103.2.3MAX1898的充电原理114硬件电路的设计134.1主要器件134.2电路原理图和说明144.3智
2、能充电器的充电过程175软件设计185.1 程序流程图195.2 主要程序说明206.总结20参考文献21附录215.2.1 单片机的源程序:21摘要本设计是选用Maxim公司的MAX1898作为电池充电芯片,使用单片机芯片AT89C52对其进行控制的一款智能充电器的设计。在对锂离子电池的基本参数特性做出介绍的基础上,该充电器的硬件电路包括单片机控制部分、电压转换及光耦隔离部分、充电控制部分。软件设计以C51语言为工具,实现了预充、快充、慢充、断电、报警等智能化充电过程。关键词:充电器;智能;基于AT89C52单片机;MAX18981引言1.1课题背景随着信息技术的高速的发展,信息化正以令人惊
3、叹的速度渗透到各个领域。电池作为一个传统的产业,正经历着前所未有的变革,特别是在通信,动力等领域,对电池有了新的要求。智能充电器就在这种环境下应运而生。在人们日常工作和生活中,随着各种电子产品的广泛应用,各种充电器就不可或缺。从电动刮胡刀到mp3,从手机到笔记本电脑,几乎只要用到电池的设备都会用到充电器。这些充电器都有便携的特点,所以充电器为人们外出旅游和出差提供了相当大的方便。单片机在电池充电器领域有着广泛的应用,利用它的处理控制能力可以实现充电器的智能化。充电器种类品种繁多,但严格意义上讲,只有单片机参与处理和控制的充电器才能称为智能充电器。 1.2指导思想(1)实现充电过程。充电分为两个
4、方面:一是充电过程的控制;二是需要提供基本充电电压。(2)智能化的实现。引入单片机可实现智能化。1.3本设计完成的智能化功能本设计是基于51单片机在实现锂离子电池充电方面的应用。这种智能充电器在单片机的控制下,实现预冲,充电保护,自动断电和充电完成报警提示功能。2单片机简介在通用微机中央处理器(CPU)基础上,将输入输出(IO)接口电路、时钟电路以及一定容量的存储器等部件集成在同一芯片上,再加上必要的外围器件,如晶体振荡器,就构成了一个较为完整的计算机硬件系统。由于这类计算机系统基本部件集成在同一芯片内,因此被称为单片微控制器(Single-Chip-Micro Controller)、微控制
5、单元(Microcontroller Unit,MCU)或嵌入式控制器(Embedded Controller),简称单片机。1目前,8位高档机和16位机在单片机应用中占主导地位,产品众多,已有几十个系列、几百个型号,除了通用单片机以外,集成更多资源,如A/D转换器、D/A转换器、“看门狗”(Watchdog)电路、LCD控制器、网路控制模块等,将单片机嵌入式系统和Intenet连接起来已是一种趋势。还有专用单片机产品,如专门用于数据处理(图像和语言处理等)的单片机。总之,单片机正在向微型化、低功耗、高速、集成、高集成度、多资源、网络化、专用型方向发展。22.1单片机的特点 单片机芯片作为控制
6、系统的核心部件,它除了具备通用微机CPU的数值计算功能外,还必须具有灵活、强大的控制功能,以便实时监测系统的输入量,控制系统,从而实现自动控制功能3。单片机主要面向工业控制,工作环境比较恶劣,如高温、强电磁干扰,甚至含有腐蚀性气体,在太空中工作的按偏激控制系统,还必须具有抗辐射功能,此而决定了单片机CPU的技术特征和发展方向:(1)单片机CPU抗干扰性强,工作温度范围宽(按工作温度分类,有民用级工业级、汽车级及军用级)。(2)单片机CPU可靠性高。在工业控制中,任何差错都可能造成极其严重的后果,因此在单片机芯片中普遍采用硬件看门狗技术,通过定时“复位”方式唤醒处于“失控”状态下的单片机芯片。(
7、3)单片机CPU电磁辐射量小。高可靠性和低电磁辐射指标决定了单片机系统的时钟频率很低。为此,单片机芯片一般采用HARVARD双总线结构,即指令和数据存储器空间相互独立,并通过各自的数据总线与CPU相连,使取指和读/写数据能同时进行。双总线结构能提高数据的吞吐率,以便在不降低数据吞吐率的条件下使用较低的时钟频率。(4)单片机的控制功能很强。(5)单片机的指令系统比较简单。(6)单片机芯片往往不是单一的数字电路芯片,而是数字、模拟混合电路系统,即单片机芯片内长集成了一定数量的模拟比较器,A/D及D/A转换电路。(7)单片机CPU采用嵌入式结构。尽管同一系列的单片机品种、规格繁多,但彼此差异却不大。
8、2.2单片机的应用由于单片机具有如上所述的特点,因此在工业生产、日常生活等诸多领域,得到了日益广泛的应用,单片机的主要应用领域有:工业控制,如在工业生产过程中参数(如温度、压力、流量、液位等)的控制,数据处理功能于一体,如转速测试仪、噪声测试仪、振动测试仪及电子秤等。计算机网络与通信,单片机上有并行I/O接口,串联I/0接口,可用于通信接口,如单片机控制的自动呼叫应答系统、列车无线通信系统、遥测遥控系统等。家用电器,由于单片机体积小,控制能力强,且片内与定时器/计数器,所以广泛应用于家用设备中。如空调、洗衣机、微波炉及防盗报警等。本设计是单片机在智能充电方面的应用。2.3单片机应用于充电器实现
9、智能化因为多数充电器一般采用大电流的快速充电法,如果电池充满了,人们不及时断电就会使电池发烫,过度的充电会严重损害电池的寿命4。像一些成本比较低的充电器一般采用电压比较法,为了防止过度充充,基本上充电到一定的程度就停止大电流快充,转而用小电流涓流补充充电。一部分的充电器不但能在很短时间内将电量充足,而且还可以对电池起到一定的维护作用,修复由于使用不当造成的记忆效应,即容量下降(电池活性衰退)现象。设计比较科学的充电器往往采用专用充电控制芯片配合单片机控制的方式。专用的充电芯片具有业界公认较好的-v检测,可以检测出电池充电饱和时发出的电压变化信号,比较精确地结束充电工作,通过单片机对这些芯片的控
10、制,可以实现充电过程的智能化,例如,在充电后增加及时关段电源、蜂鸣报警和液晶显示等功能。充电器的智能化可以缩短充电的时间,同时能够维护电池,延长电池使用寿命。51系列单片机也是当前使用最为广泛的8位单片机系列,其丰富的开发资源和较低的开发成本,使51系列单片机现在以至将来都仍会有强大的生命力。在众多的51系列单片机中,AT89系列单片机在我国得到了极其广泛的应用,AT89系列单片机是美国Atmel公司的8位机产品。他的特点是片内含有Flash Memory,Flash Memory是一种电可摩除和电写入的闪速存储器(记为FPEPROM),在系列的开发过程中可以很容易地进行程序修改,使开发调试更
11、为方便。2.4 本设计所用的单片机芯片 本设计的单片机芯片选用Atmel公司的AT89C52,它可以完全满足要求。AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8 KB的可反复擦写的Flash只读程序存储器(ROM)和256 B的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元.AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,
12、但不可以在线编程(S系列的才支持在线编程)。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。2.4.1 管脚定义说明 1.VCC管脚:系统供电电源 2.GND管脚:接地管脚 3.P0端口(P0.0P0.7):P0端口是一组8位开环的双向I/O端口。当P0用作输出口时,没个管脚能保持8个TTL输入。当操作外部程序与数据区时,通过配置,P0还可用作地位的地址/数据复用端口。 4.P1端口(P1.0P1.7):P1端口是一组具有内部上拉电阻的双向I/O端口。由于存在上拉电阻,P1端口的外部电流IIL会很低。此外,P1.0和P1.1管脚可配置成为
13、定时/计数器2的外部计数输入(P1.0/T2)和触发输入(P1.1/T2EX),具体配置如表2.1。在刷新程序代码和验证信息时,P1端口还可用来接受地位地址字节。 表1 P1.0和P1.1管脚配置管脚配置功能表述P1.0T2(定时/计数器2的外部计数输入),时钟输出P1.1T2EX(定时/计数器2的处罚和方向选择) 5P2端口:P2端口是一组具有内部上拉电阻的双向I/O端口。当系统使用16位地址信息读取外部程序区间或操作外部数据区间时,他发送高8位地址字节。这种操作一般使用MOVXDPTR语句实现。 6P3端口:P3是一组具有内部上拉电阻的双向I/O端口,同时它还具备许多系统功能,如表2所示。
14、表2 P3的功能管脚配置功能P3.0RXD(串行输入端口)P3.1TXD(串行输出端口)P3.2INT0(外部中断0端口)P3.3INT1(外部中断1端口)P3.4T0(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6WR(外部数据存储区间的写入端口)P3.7RD(外部数据存储区间的读取端口) 7.RST管脚:输入用于抚慰输入信号。 8.ALE/PROG管脚:ALE表示地址所存使能信号,当防卫外部存储区间时,用来锁存低8位地址字节。/PROG表示在刷新程序代码时的程序脉冲输入信号。在正常操作时,ALE将以系统晶振频率的1/6发送一个固定的频率,可用于外部时钟或者定时。 9./PS
15、EN管脚:/PSEN表示程序代码存放使能信号,主要用于读取外部的程序数据区间,当AT89C52执行外部程序数据区间中的代码时,/PSEN信号在每一机器始终周期内使能两次,但若单片机操作外部数据区间,/PSEN将无实际意义。 10.XTAL1管脚:改管脚点解单片机晶振,作为晶振放大器和内部时钟处理电路的输入。 11.XTAL2管脚:晶振放大器的输出。5 AT89C52管脚图如图2.1。 图2.1 AT89C52管脚图3锂离子电池介绍及充电芯片MAX1898的介绍3.1锂离子电池简介锂是一种金属元素,化学符号Li,是一种银白色、十分柔软,化学性能活泼的金属,是金属中最轻的。锂离子电池的正极材料通常
16、有锂的活性化合物组成(主要成分是LiCo02),负极则是特殊分子结构的碳。锂离子电池可以分成两大类:不可充电型和可充电型,最大特点是比能量高。比能量指的是单位重量或单位体积的能量,用Wh/Kg或Wh/L表示。3.1.1锂离子电池基本参数特性 1.高能量密度锂电子电池的能量密度可以达到360Wh/L,158Wh/Kg,是NI-CD及NI-MH电池的两倍以上。2.高工作电压 一般放电电压为3.7V。3.高负载特性一般锂电子电池的最大连续放电电流可达2CmA。4.放电特性稳定即使在电池寿命接近终止时,光宇锂离子电池仍保持着良好的放电稳定性。5.快速充电特性锂离子电池可接受的最大充电电流可达1CmA,
17、而且恒流充电时间可达50分钟以上。6.长循环寿命重复使用次数多,循环充电特性好,可以重复5001000次充放电。锂离子电池的这些特点促进了便携式产品向更小更轻的方向发展,使得选用单节锂离子电池供电的产品也越来越多。3.1.2锂离子电池的优缺点虽然锂离子电池很少发生结晶化的反应,这种反应是产生记忆效应的原理。但是,锂离子电池在多次充放电之后仍会性能下降,原因是非常复杂的。最主要的是正负材料的变化,从分子角度看,正负极能容纳锂离子的空穴会塌陷,这样就会堵塞,影响电流的充放;从化学角度来看,正负极材料的钝化,会产生一些稳定的化合物,这样也会也会影响性能。从物理角度看上,由于充放电过程中难免会有一些摩
18、擦,碰撞,这样会使外部材料慢慢流失,甚至脱落。这三方面的原因都会使锂离子电池在充放电过程中参加导电的锂离子丢失。过度的充放电,都会对造成电池的损害或降低使用寿命,过度放电将导致负极碳过度释放出锂离子而使得其片层结构出现塌陷,过度充电将把太多的锂离子硬塞进负极碳结构里去,而使得其中一些锂离子再也无法释放出来。这也是锂离子电池为什么通常配有充放电的控制电路的原因。锂离子电池一般都带有管理芯片和充电控制芯片。其中管理芯片中有一系列的寄存器,存有容量、温度、ID、充电状态、放电次数等数值。这些数值在使用中都会逐渐变化。充电控制芯片是控制电池的充电过程。锂离子电池的充电过程分为两个阶段,恒流快充阶段(电
19、池指示灯呈黄色时)和恒压电流递减阶段(电池指示灯呈绿色闪烁。开始充电时,电池的电压以较大的斜率升压,当到达电池的标准电压,之后再控制芯片的控制下转入恒压充电状态,此过程中电压变化不大,电流在逐渐减小,当充电电流几乎降到零时,可认为电池电量已满,停止充电。电量统计芯片通过记录放电曲线(电压、电流、时间)可以抽样计算出电池的电量。而锂离子电池在多次使用后,放电曲线是会改变的,如果芯片一直没有机会再次读出完整的一个放电曲线,其计算出来的电量也就是不准确的。所以我们需要深充放来校准电池的芯片。锂离子电池的不足之处在于对充电器要求比较苛刻,需要保护电路。锂离子电池要求的充电方式是恒流恒压方式,为有效利用
20、电池容量,需将锂离子电池充电至最大电压,但是过压充电会造成电池损坏,这就要求较高的控制精度。另外,对于电压过低的电池需要进行预充,充电器最好带有热保护和时间保护,为电池提供附加保护。由此可见实现安全高效的充电控制成为锂离子电池推广应用的瓶颈。3.2MAX1898充电芯片 MAX1898是一片Maxim公司生产的单锂离子电池的线性充电器电路,是一款性价比比较高的线性充电芯片。MAX1898配合外部的PMOS或PNP晶体管可以组成完整的锂离子充电器。MAX1898提供了充电状态的输出指示、输入电压是否与充电器连接的输出制式和充电电流指示。MAX1898可以提供精确的恒流/恒压充电,提高了电池性能且
21、延长了电池的使用时间。充电电流可自由设定,原理无需外部检流电阻,只用内部检流。MAX1898还可以可选过放电电池的低电流预充和充电终止安全定时器、输入关断控制、可选充电周期重启(不用重新给电)。它具有很高的集成度,在很小的尺寸内集成了很多的功能,基本上覆盖了基本的应用电路,大大简化了设计过程,因为只需少量外部的元件。图3.1 MAX1898实物图3.2.1MAX1898的特点及充电芯片的选择理由MAX1898特点如下:1. 4.5V12V的输入电压,无需变压装置。2. 可以自动检测输入电源。3. 充电电流可以自由编程。4. 内置检流电阻(充电电流可根据自己要求内部检流,不用外部检流电阻)。5.
22、 检流可监视输出。6. 安全定时器可以自由编程。7. 充电状态可有LED指示。8. 可选/可调节自动重启。9. 小尺寸 uMAX封装的特点很灵巧,简易。10.调整原件是成本很低的PNP或者PMOS晶体管7。11.电压精度 0.75,这种精度很高,符合要求。12.简单、安全的线性的充电方式。由以上特点可以肯定MAX1898对锂离子电池进行安全充电。而且它的高集成度,是在很小才尺寸内集成了很多功能,尽量减少外部电路。所以选用MAX1898作为充电芯片。3.2.2MAX1898的引脚构造MAXl898为10引脚、超薄型的MAX封装,其引脚分布如图3.2所示 图3.2 MAX1898引脚图各引脚的功能
23、:1. IN(1脚): 传感输入,能够检测输入电压/电流。2. /CHG(2脚):充电状态指示脚,同时驱动LED。3. EN/OK(3脚):使能输入脚/输入电源输出指示脚。EN为输入脚,可通过输入禁止芯片工作;OK为输出脚,指示输入电源与充电器是否连接。4. ISET(4脚):充电电流调节引脚。可以串联一个电阻到地来设置最大的充电电流。5. CT(5脚):安全充电时间设置引脚。接一个时间电容来设置充电时间(当此脚接地时,禁止充电)。6. RESET(6脚):自动重新启动控制脚。当这个引脚直接接地时,如果电池电压掉至基本电压阈值一下200mV,将会重新开始新的充电周期;如果这个脚串联一个电阻接地
24、,这个阈值会降低。如果此脚悬空或者CT脚接地,自动重启功能会丧失。7. BATT(7脚):电池传感输入脚,此脚接锂离子电池正极。这个引脚需要旁接一个大电解电容到地。8. GND(8脚):接地引脚。9. DRV(9脚):外部晶体管驱动器,此脚接晶体管的基极。10.CS(10脚):电流传感输入引脚,此脚接晶体管的发射极。3.2.3MAX1898的充电原理 MAX1898外接P沟道场效应管和限流型充电电源,可以对锂离子电池进行快速、有效、安全的充电。这种连接方式有个很大的优点:如果在没有使用电感的情形下,仍然能使功率耗散降到很低,这样可以进行预充电,同时具有温度、过压保护的功能,最长的充电时间的限制
25、可以对锂离子电池进行二次保护。MAX1898集成度高,内部有很多电路:主控制器、定时器、输入电流调节器、电压检测器、充电电流检测器、温度检测器。输入电流调节器可以限制电源的总输入电流(包括系统充电电流和负载电流)。充电电流检测器如果检测到输入电流大于设定的阈值电流时,可以进行反馈,使输入电流调节器降低充电电流,这样就会控制输入电流。这是因为当系统工作的时候,电源的电流变化范围很大,如果充电器没有输入电流检测的功能,则输入电源就必须能够提供最大充电电流和最大负载电流之和,这就会是电源体积增大、成本增加。正因为有这个功能,就会使充电器降低了对电源要求,与此同时,也大大简化了设计电源的过程。MAX1
26、898典型充电电路的过程:图3.3 MAX1898典型充电电路 1电源输入:输入电源范围为4.512V。我们在上面讨论过,锂电池的充电方式必须为恒流恒压方式,所以电源的输入就采用恒流恒压源,我们可以用直流电源外加一个变压器来实现。2.输出:锂离子电池的充电接口可以外接一个场效应管来提供。3.充电时间的选择: 充电时间tCHG的设置需要外接一个电容CCT(充电时间是快速充电时的最大充电电流)。充电时间与定时电容的关系:CCT=34.33tCHGCCT单位是nF,tCHG单位为小时。在大多数情况下,快速充电的最大充电时间一般不超过3个小时,所以CCT常取100nF。4.设置充电电流:在限制电流的模
27、式下,最大充电电流IFSTCHG的设置需要外接一个电阻REST,公式如下:IFSTCHG=1400/REST此式中,REST单位为,IFSTCHG单位为A。充电过程的启动很简单,只要把电池放进充电器就会检测到,之后就会开始充电。一般情况下,平均的脉冲充电电流要低于设置的快速充电电流的20%,当充电时间超过我们设置的最大充电时间时,充电周期就会结束。MAX1898会自动检测充电电源,如果没有检测到电源时就会自动关断,尽量少的减少电池的漏电。快速充电启动之后,打开外接的P型场效应管,当检测到电池电压达到的设定的阈值时,就会竟如脉冲充电,P型场效应管打开的时间会越来越短。充电结束时,LED指示灯就会
28、呈现周期性的闪烁。闪烁的含义如表:表3.1MAX1898典型充电电路的LED指示灯状态说明充电状态LED指示灯电池或充电器没有安装灭预充或快充亮充电结束灭充电出错以1.5Hz频率闪烁4硬件电路的设计硬件电路的设计的核心器件是MAX1898、AT89C52。电路的设计围绕这两个器件展开的。4.1主要器件1. 本设计的核心器件为MAX1898,MAX1898的介绍在前面详细介绍过(详见3.2)。2. 本设计的单片机为AT89C52,AT89C52的介绍在前面详细介绍过(详见2.4)。3. 因为充电器外部由+12V来供电,所以就需要一个电压转换芯片将+12V电压转换为+5V电压,在这里可以选用三段电
29、压转换芯片LM7805来完成电压的转换。LM7805简介:三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。它的样子象是普通的三极管,TO- 220 的标准封装,也有LM9013样子的TO-92封装。该系列集成稳压IC型号中的LM78或LM79后面的数字代表该三端集成稳压电路的输出电压,如LM7806表示输出电压为+6V,LM7909表示输出电压为-9V。这里LM7805,表示输出电压为+5V。图4.1 LM7805样品 4.为了降低电压的干扰,保持电路稳定,在LM7805完成电压转换,将+5V充电电源传给MAX1898之前,需要先经过一次光耦模块6N137处理
30、,这样,通过单片机对光耦模块的控制,可以及时关断充电电源。6N137的引脚功能:表4.1 6N137引脚功能各引脚引脚功能NC(1、4脚)悬在空中+(2脚)、(3脚)发光二极管的正负极GND(5脚)接地OUTPUT(6脚)输出EN(7脚)使能端。低的时候,无论有无输入,输出总是高。不用,悬空就行。VCC(8脚)电源输入端图4.2 6N137引脚图 4.2电路原理图和说明硬件电路是由单片机电路、电压转换及光耦隔离电路、充电控制电路组成。图4.3 单片机控制部分单片机部分的电路原理图如图4.3。其中,U1为单片机AT89C52,这是智能控制控制中心,工作频率为11.0592MHz,其可通过外部中断
31、口/INT0(12脚)响应充电芯片MAX1898输出的充电状态,并通过P2.0口输出控制信号控制隔离光耦6N137,随时启动或关断充电电源。LS1是蜂鸣器,他可有单片机的P2.1脚控制发出报警声提示。图4.4为电压转换及光耦隔离部分电路原理图4.4电压转换及光耦隔离部分电路U2是电压转换芯片LM7805,由图我们可以看出来,输入时电源电压12V,输出经过LM7805就成了5V的电压,这是充电器需要的电压。C8是光耦隔离芯片6N137,输入VCC(8脚)与LM7805的输出(3脚)相连,输出OUTPUT是经过隔离的5V电压,U4的2脚与单片机的P2.0相连,单片机控制可以适时地关闭充电电源,这样
32、可以防止电源的干扰。图4.5充电控制部分 图4.5为充电控制部分的电路原理图,充电控制部分的核心器件是MAX1898,它的充电状态引出脚/CHG经过74LS04反相后于单片机/INT0相连,触发外部中断。R5是设置充电电流的电阻,阻值为2.8k,所以最大充电电流为500mA;C12是设置充电时间的电容,容值为100nF,所以最大充电时间是3个小时。LED_R是红色发光二极管,它亮表示电源接通;LED_G是绿色发光二极管,它亮时表示电池处于充电状态。Q1是由MAX1898驱动的P沟道场效应管。 4.3智能充电器的充电过程 该充电器的功能:预充功能;充电保护功能;自动断电功能;充电完成报警提示功能
33、。 1预充把电池放在充电器上,接通输入直流电源,当充电器检测到电池时将定时器复位,单片机输入高电平,充电芯片启动,之后就进入了预充过程,在这个过程中充电器以快速充电流的1/10给电池充电,来令电池的电压和温度恢复到正常状态。预充时间由外接电容CCT确定(100nF时为45分钟),如果在预充时间内电池电压达到2.5V,并且电池温度正常,则充电进入快充过程;如果超过预充时间后,电池电压还不能达到2.5V,则此电池不可充电,充电器显示电池故障,LED指示灯闪烁。 2快充快充过程也称为恒流充电,此时充电器以恒定电流对电池充电。根据电池厂商推荐的充电速率,一般锂离子电池大多选用标准充电速率,充满电池一般
34、需要一个小时左右(也就是快速充电的时间)。刚开始是恒流充电,电压会以很大的斜率升高,当电池电压升高到规定的电压的时候,就开始恒压充电,充电电流会迅速降低,这就进入了慢充状态。3慢充慢充也叫满充。所谓的慢充,即在快充结束后,电压达到我们设定的那个值时(用户设定的预设值时),充电电压不会发生变化,亦即恒压充电,此后,电流就会以较大的斜率下降,当下降到设定值以下,就会进入顶端截止充电。顶端充电的实质就是充电器以很小很小的电流对电池补充能量。因为充电器的电压检测器在检测电压的过程中,会通过电池的内阻,虽然在慢充和顶端截止充电的时候,电流会慢慢下降,这样降低了电池内阻呵其他串联电阻对电池端电压的影响,但
35、是串联在充电回路的电阻行程的压降还会对电压的检测有影响。一般情况下,满充和顶端截止充电可以延长电池510的使用时间。4断电当电池充满后,MAXl898芯片的2号管脚发送的脉冲电平会由低变高,这就会被单片机检测到,就引起单片机的中断,在中断过程中,如果判断出充电完毕,则单片机将通过P2.0口控制光耦6N137,切断LM7805向MAXl898的供电,从而保证芯片和电池的安全,同时也减小功耗。同样当电池因为短路或断路不可充电时,也会由单片机充电控制器停止充电并显示电池故障。5报警当电池充满后,MAXl898芯片本身会熄灭外接的LED绿灯。同时,单片机在检测到充满状态的脉冲后,或检测到电池故障不仅会
36、自动切断MAX1898芯片的供电,而且会通过蜂鸣器报警,提醒用户及时取出电池。检测MAX1898的输出信号/CHG,当MAX1898将要完成充电时,这个引脚会发出1.5HZ信号脉冲,单片机的/INT0引脚接收中断后,就会中断。并使用单片机的T0计数器开始计数,当下一个脉冲到来时,在外中断程序中判断单片机的计数值是否在4S左右。如果是,则通过控制P1.2输出控制MAX1898芯片EN/OK脚,控制器停止充电,并引发蜂鸣器报警。5软件设计本设计单片机芯片主要是在充电过程中起到保护作用,充电过程主要是MAX1898控制的。MAX1898完成充电的时候,它的/CHG引脚就会产生由低到高的跳变,这就会引
37、起单片机的/INT0中断。/CHG存在高电平有三种情况:一是没有电池或没有输入电流;二是充电完了;三是充电出现错误,此时/CHG会以1.5MHz的频率反复跳变。前两种情况单片机都可以直接控制光耦切断充电电源,因此,程序中只要区别对待第三种充电出错的情况就行了。所以,在此中断中,如果判断出不是充电出错,则控制P2.0 脚切断电源,控制P2.1 脚启动蜂鸣器报警。5.1 程序流程图开始初始化While(1)外部中断0服务子程序int0_count为0?启动定时器0:t_count=0int0_count+返回noOo定时器0服务子程序关闭T0计数,重设计数初值t_count+t_count600?
38、int0_count为1?充电完毕,蜂鸣器报警,切断充电电源关闭T0中断和外部中断0启动T0计数no返回yes充电出错no图5.1 单片机控制智能充电器工作程序流程图5.2 主要程序说明 主要程序见附件。6.总结首先,通过本次毕业设计,切切实实加强了我独立思考问题的能力,以及克服着手查资料时的无聊不良情绪。同时,也弥补了一些我在单片机知识上的漏洞,在以后的学习过程中消除了一些障碍。在毕业设计的过程中,让我熟悉了单片机的设计流程,以及论文的书写步骤,有了这方面的加强,在以后的学习过程中,相信我不会毛毛躁躁,静心完成诸如单片机的设计。随着当今社会科技的高速发展,电池产业的也是飞速前进,已经渗透到各
39、个电子产业,像从我们平时用的MP3到笔记本电脑,处处都有电池的身影,电池在这些电子产品中就像植物中的绿叶似的,光合作用,之后产生能量,如果没有绿叶,植物就不能生存,同样的道理,没有电池提供电能,所有电子产品就会变成一堆垃圾。我选择这个题目,感觉有与时俱进的意义。在最近几年,电池技术领域最突出的创新是锂离子电池。与镍氢电池相比,锂离子电池具有很高的容量。从容量/体积比来说,锂离子电池比镍氢电池高出20%到30%;从容量/质量比来看,锂离子电池要比镍氢电池高出2倍。而且,锂离子电池几乎没有“记忆效应”,但过度的充放电,都会对造成电池的损害或降低使用寿命。所以有人就有这种非常形象贴切的比喻:锂离子电
40、池就如同一推肥皂泡沫,泡内储存的就是电能。当充电时,气泡会随着充电时间加长而不断增大,当超过其极限值时气泡酒会破裂,此时即损坏了锂电晶型,造成永久性破坏。本设计就迎合了锂离子一些特点。这次毕业设计的题目是基于51单片机的智能充电器的设计,从中可以看出主要器件是51单片机,其中51单片机在此设计中起到的是控制充电器的过程,顾名思义,控制过程是全面的,并不是单纯得控制我们所想到的充电,断电过程,而是更加高效、安全、细分化的充电过程,本次设计所实现的充电过程是:预充、快充、满充、断电、报警等过程,这样就会高效的充电,并且充电过程中不会发生过度充电的结果,影响锂离子电池的寿命。根据锂离子电池的特点,本
41、设计利用了MAX1898来作为充电器的充电芯片,在本设计中,还是要重点把握预充、快充、满充、断电、报警的充电原理,也是很好的迎合了锂离子电池的特点。MAX1898的充电状态指示输出信号CH6在本次设计中的应用:MAX1898在外围电路的设计中,其中包括设置充电电流的电阻和充电时间的电容数值的选取以及如何在单片机程序中判断出充电完成还是充电出错,并做出相应的处理。由于本人的能力有限,在编程过程中遇到了很多弯路,而且有时把一些本来很简单的问题复杂放大化了,最终在一些同学的帮助下,完成了编程。在以后的学习过程中,只要有条件,有机会,我一定要把这个设计的实物完成,切切实实得能完成充电。参考文献 1 潘
42、永雄.新编单片机原理与应用M.第2版,西安:西安电子科技大学出版社,2008.2 徐伟祥,刘旭敏.单片微型机原理及应用M.大连:大连理工大学出版社,1996. 3 胡汉才.单片机原理及其接口技术M.北京:清华大学出版社,1996. 4 周航慈.单片机程序设计基础M.北京:航空航天大学出版社,1999.5 冯建华,赵亮.单片机应用系统设计与产品开发M.北京:人民邮电出版社,2004. 6 吴宇平,戴小平,马军旗,程预江.锂离子电池应用与实践M.北京:化学工业出版社,2004.7 康华光,陈大钦.电子技术基础模拟部分M.第4版,北京:高等教育出版社,1999. 8 戴佳,戴为恒,刘博文.51单片机
43、C语言应用程序设计实例精讲M.第2版,北京:电子工业出版社,2008.附录5.2.1 单片机的源程序:#define unchar unsigned char#define uint unsigned intsbit GATE =P20;sbit BP=P21;unit t_count,int0_count;/*定时器0中断服务子程序*/void timer0() interrupt 1 using 1 TR0 =0; /停止计数 TH0=-5000/256; /重设5ms计数初值 TL0=-5000%256; t_count+; if (t_count600) /第一次外部中断0产生后3s
44、if (int0_count=1) /还没有出现第二次外部中断0,则认为充电完毕 GATE = 0; /关闭充电电源 BP = 0; /打开蜂鸣器报警 else /否则即是充电出错 GATE = 1; BP = 1; ET0 = 0; /关闭T0中断 EX0 = 0; /关闭外部中断0 int0_count = 0; t_count = 0; else TR0 = 1; /T0开始计数/*外部中断0服务子程序*/void int0() interrupt 0 using 1 if (int0_count=0) TH0 = -5000/256; /5ms定时 TL0 = -5000%256; TR0 = 1; /启动定时/计数器0计数 t_count = 0; /产生定时器0中断的计数器清零 Int0_count+;/*初始化*/void init() EA = 1; /打开CPU中断 PT0 = 1; /T0中断设为高优先级 TMOD = 0x01; /模式1,T0为16位定时/计数器 ET0 = 1; /打开T0中断 GATE = 1; /光耦正常输出电压 BP = 1; /关闭蜂鸣器 int0_count = 0;