毕业论文-基于STC89C52的智能锂电池充电器设计.doc_第1页
毕业论文-基于STC89C52的智能锂电池充电器设计.doc_第2页
毕业论文-基于STC89C52的智能锂电池充电器设计.doc_第3页
毕业论文-基于STC89C52的智能锂电池充电器设计.doc_第4页
毕业论文-基于STC89C52的智能锂电池充电器设计.doc_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

北京林业大学本科毕业论文(设计)本科毕业论文(设计)(普通高等教育)论文题目基于STC89C52的智能锂电池充电器设计学 院理学院专业名称电子信息科学与技术班 级电子11-2班学 号姓 名指导教师副教授基于STC89C52的智能锂电池充电器设计摘要为了提高充电效率,并在充电过程中有效保护锂离子电池,本文设计了一个具有电流电压检测功能、可以精确控制充电过程的充电器,并给出了各个模块单元的电路和软件控制部分流程图。本文中的充电器是一个以STC89C52单片机为控制核心的充电器,通过单片机控制TP4056来为锂离子电池充电。在实际充电过程中,TP4056可以自动检测电池状态并实现对锂离子电池充电的涓流充电、快速充电和恒压充电的转换。此外,该设计还使用LCD液晶显示屏将锂离子电池的充放电状态、充电电压、充电时的电流等信息显示出来,实现了对锂电池的高精度充电控制。用改变锂离子电池充电电压的方法来实现精确的充电控制,提高了充电效率,并能确保锂电池不会过充、过热而损坏,大大提高了安全性能,延长了锂电池的使用寿命,实现了高效的充电功能,具有电路稳定性强、集成度高,可以有效保护电池等特点。关键词:智能充电器;电流显示;电压显示 The STC89C52-based design of intelligent Li-ion battery chargerElectronic Information Science and Technology 11-2 Dong Li-naInstructor Huo HuAbstractIn order to improve the charging efficiency and the effective protection during charging lithium-ion battery, this paper designs having a current-voltage detection function, can accurately control the charging process the charger, and gives each module circuits and software flow chart of the control unit section . Herein charger is a microcontroller core STC89C52 charger, through SCM TP4056 to lithium-ion batteries. In the actual charging process, TP4056 can automatically detect the battery status and Lithium-ion battery trickle charge, fast charge and constant voltage charge conversion. In addition, the design also uses the LCD display will charge and discharge status of the lithium-ion battery, the charging voltage, charging current and other information is displayed, the realization of the lithium battery charge control precision. By changing the voltage of the lithium-ion battery charging methods to achieve precise control, improved charging efficiency, and to ensure that lithium batteries will not overcharge, overheating and damage, greatly improving the safety performance and extend the life of lithium batteries, to achieve efficient charging function with circuit stability, high integration, can effectively protect the battery characteristics.Key words: intelligent charger, Current display, voltage display目 录绪论11设计任务及总体方案选择11.1设计任务及要求11.2 总体方案的确定22系统硬件配置说明52.1主控制芯片STC89C52介绍52.2 TP405662.3 芯片介绍82.4 LCD液晶显示器的介绍92.4.1 LCD模块的引脚102.4.2 寄存器选择113系统硬件电路设计113.1 主控制器电路113.2 充电电路123.3 电压电流采集电路123.4 液晶显示电路133.5 系统硬件总体电路144系统软件程序设计144.1系统软件设计说明144.2主程序软件流程图144.3液晶显示器程序流程图154.4 ADC0832程序流程图155系统调试16结束语16致谢17参考文献18IV绪论随着科学技术的不断进步,电子数码类产品发展也越来越快,便携式数码产品对电池的灵活性以及方便性有了更高的需要,锂电池以其显著优势迎合了这些需求,锂电池的工作电压高,体积小、重量轻、能量高,寿命长,可以安全快速充电,允许温度范围宽,放电电流小、无记忆效应、无环境污染;因此在便携式设备中应用非常广泛,许多产品都把可充电锂电池作为主要的能量来源。1常见的充电器有两种直充和座充,直充与座充充电时对充电电压的要求不一样,直充(尾充)的输出电压是5V,电池充(座充)的输出电压是4.2V。充电电流一般都在100mA-500mA之间,充电输出电流大则充电快,反之则充电慢。由于手机品种繁多,充电接口和电池的不同,使得与其适配的充电器也各不相同。而一旦充电器损坏或遗失,会很难买到相匹配的充电器,即使能够相配价格也会很高。针对这种情况,市场上出现了一种充电器叫做万能充电器,这种充电器可以通过调整输出电源触点,用夹钳夹住电池以达到给不同大小的手机电池充电的目的。该充电器也有缺点,每次充电都要调整触点,而且对位比较困难,触点和电池的接触也容易松动脱落。市场激烈的竞争,也导致了这类充电器的质量比较低劣,容易使电池报废,甚至充电时电池发生爆炸的现象也时有发生。随之又有了无线充电器、太阳能充电器出现,但这两种充电器往往价格昂贵,且使用条件受限制。随着充电器技术的不断进步,现在的充电器已经应用了集成电路技术,即IC控制电路。尽管充电器种类繁多,但充电过程都相似。现有的很多产品配备的锂电池充电器都不能很好地为锂电池充电,过充或欠充容易损伤锂离子电池寿命,且充电速度慢。针对这些问题本文设计了一款可以精确控制充电过程的智能充电器,并用LCD显示充电过程中的电流和电压。1设计任务及总体方案选择1.1设计任务及要求现有的普通便携式锂电池充电器存在各种问题和不足,无法精确控制电池充电的过程,这样容易出现过充或欠充现象,而且充电时间长、效率低下。在充电过程中施加到电池的电压影响着电池的效率和寿命。超过端接电压会导致过度充电,会引起电池失效,降低电池的容量。本文设计了具有如下性能指标和功能的智能锂电池充电器。智能锂电池充电器的主要性能指标和功能如下:1).对最常用的一节3.7V锂电池进行充电。2).具有过压保护,欠压停充,充满电自动断电等保护功能。充电电压检测精度为0.2V 。3).LCD液晶显示实际充电电压、电流、充满提醒等状态信息。1.2 总体方案的确定1.2.1锂离子电池及其充电原理(1)什么叫锂电池前几年出现的锂电池是金属锂蓄电池的替代产品,它的阳极由能吸藏锂离子的碳极制作,放电过程中,锂变成锂离子,脱离了电池阳极,到达锂电池阴极。锂离子可以在阳极和阴极之间移动,但电极本身不发生变化。这是锂电池与金属锂电池本质上的差别。锂电池的阳极是石墨晶体,阴极是二氧化锂。充电时,阴极中锂原子电离成锂离子和电子,并且锂离子向阳极运动与电子合成锂原子。放电时,锂原子从石墨晶体内阳极表面电离成锂离子和电子,并在阴极处合成锂原子。所以,在这种电池中锂一直以锂离子的形态出现,而不会以金属锂的形态出现,所以这种电池叫做锂电池。(2)锂离子电池特性锂离子电池的能量重量比和能量体积比都很高,而且无记忆效应,可以反复充电,且使用寿命较长,价格也越来越低。它的这些特点促进了便携式产品向更小更轻的方向发展,使得选用单节锂离子电池供电的产品也越来越多。锂离子电池也有不足之处,它对充电器的要求比较苛刻,对保护电路的要求较高。其要求的充电方式是恒流恒压方式,为有效利用电池容量,需将锂离子电池充电至最大电压,但是过压充电会造成电池损坏,要求充电有较高的控制精度(精度高于1)。另外,电压过低时电池需要进行预充,充电终止检测除电压检测外,还需要采用一些其他的辅助方法作为防止过充的后备措施,如检测电池温度、限定充电时间等,为电池提供附加保护。可见要实现安全高效的充电控制已经成为锂离子电池推广应用的瓶颈。锂电池充电器的基本要求是特定的充电电流和充电电压,从而保证电池安全充电。增加其它充电辅助功能是为了改善电池寿命,简化充电器的操作,其中包括给过放电的电池使用涓流充电、电池电压检测、输入电流限制、充电完成后关断充电器、电池部分放电后自动启动充电等。所有或者部分这些功能都可以在充电芯片中实现,当然,也可利用ASIC、分立器件、或在微处理器的基础上用软件实现。便携式电子设备对电池提出了许多独特的要求,如电池必须具有高能量密度,以为便携式应用提供源源不断的能量;电池重量要轻,占面积要小;电池应能够安全地使用和防止可能的滥用,并具有无限的闲置使用寿命;电池应该具有极低的成本。所以几乎所有高性能便携式产品都会使用包括锂离子聚合物电池在内的可再充电锂离子电池,这么做的理由非常充分。与其它可再充电电池相比,锂离子电池有较高的能量密度、较高的电池电压、自放电少、周期寿命非常长,而且环保且充电和维护简单。另外,由于其具有相对高的电压(2.9V 至 4.2V),因此很多便携式产品都能用单节电池工作,从而简化了产品总体设计。锂电池已经成为当前便携式电子设备的首选电池。因锂离子电池具有较高的能量密度加上较高的电池电压的化学特性,使人们能制造出较小且较轻的电池。但是,为了有效利用这种电池的容量和延长的电池寿命,需要极其严格地控制充电参数。延长电池寿命的关键是选择适合的电流、电压和温度等充电参数。超过端接电压会导致过度充电,短期看是增加了电池的可用性,但是长期看将会引起电池失效,并且可能导致安全问题。在充电时对电池所施加电压的精度对电池的效率和寿命起到非常重要的作用。过度充电对电池的影响会累积,充电端电压每提高1%,初始容量就会提高约5%。这种短期的提高对电池的充电和放电的周期会有严重的影响。过度充电会导致充电周期缩短。充电不足虽然不会引起安全问题,但是会使电池的容量大大降低。(3) 充电原理科技发展至今,大多数新技术产品都需要电池具有更加充足的电力、更加紧凑的设计和更稳定的安全性,还需要电池能够充电再利用。1980年,美国的物理学教授约翰古迪纳夫发明了一种新型的锂电池。在这种锂电池中,锂能够在电池中以锂离子的形式,穿梭于两个电极之间。锂是周期表中最轻的元素之一,同时拥有着极强的电化学势,这两点优势使得它能够以最小的体积提供最高的电压。而这一点正是锂离子电池的基础。在这种新电池中,锂和过渡金属(比如钴、镍、锰以及铁)与氧的化合物作为阴极。在外加电压之后,再次充电开始,带正电的锂离子从阴极迁移到石墨材料制成的阳极,重新变为金属锂。由于金属锂有着极强的电化学推动力,所以非常容易被氧化,它会迁移到阴极并再次成为锂离子,然后把外层电子交给过渡金属离子。在这一循环过程中的电子移动为我们提供了所需的电流2。(4) 锂离子电池的充电方法给锂离子电池充电的方法有很多种。常用的最简单的锂离子电池充电器通常指的是恒压(CV)充电器。它由一个电流受限的恒压源组成,该恒流源与电池两端相连的。它的电流被限制在低于可充锂电池的电池容量范围,输出电压则调节为电池终止电压(碳阳极电池是4.1V,石墨阳极电池是4.2V)3。电池的电量耗完时会尽可能地吸收电源提供的电流。电池充电的时候,电池两端的电压上升,而充电的电流逐渐变小。充电电流下降到0.1C以下时,电池就被充满了。一般不用均流充电,因此当充电结束时,充电器需要关闭或断开。为防止有缺陷的电池被不确定的电流充电,需要使用其他定时器来终止充电过程3。与其他充电方法相比,恒压充电算是一种成本相对较低的方法,但它却需要很长的充电时间。充电电压保持恒定,随着电池持续被充电,充电电流将会迅速下降,使得充电的速度也会迅速下降。之后,电池充电时的电流速率将远低于它可以承受的电流速率3。一种更快的充电方法是恒流/恒压(CC/CV)充电。当开始充电时,CC/CV充电器首先选择施加一个等价于电池容量C的恒定电流。为防止电池在恒流充电的充电周期中过充电,需要实时监测电池封装两端的电压。当电压上升到与设定的终止电压相等时,电路切换到恒压源工作模式4。即使电池两端的电压等于终止电压,但因为在电池端至电池芯之间的ESR上存在电压降,所以实际的电池电压比终止电压略低3。在恒流充电期间,电池能以接近其终止电压的高电流速率充电,且不会有任何被施加高电压和发生过充电的危险3。经恒流充电后,电池的容量将达到其额定值的85%。在恒流周期结束后,充电器切换到恒压周期。在恒压周期,充电器通过监视充电电流来决定是否结束充电5。与恒压充电器一样,当充电电流减小到电池的0.1C以下时,充电周期结束3。尽管实现CC/CV充电方方法需要更加复杂的电路但因为它可以显著减少充电时间。所以,本文设计的智能充电器采用了CC/CV的充电方法,从而高效的对锂离子电池进行精确的充电。锂离子电池充电器的所充电的对象并非总是质量好的电池,实际上,被充电的电池可能有缺陷而不能接受充电。此为,试图对有缺陷的电池进行快速充电可能会产生安全隐患。理想的充电器必须能够检测所有可能的电池故障模式,并有针对性地进行充电6。如果锂离子电池的温度超出了指定的温度范围,那么给它充电将是不安全的。目前,所有充电器都必须跟踪电压的变化,而CC/CV充电器甚至需要跟踪电流和电压7。在提高充电器效率和延长电池寿命的同时不能忽略潜在的安全问题,这就需要更智能的充电控制。为防止因意外把反向电压施加到电池上,所有锂离子电池都包含一些保护电路。一般来说,保护功能包括防止过放电、过充电、过大的充/放电电流,以及避免电池被施加高电压。在电池的充电或放电期间,如果任何参数超过了特定电池设置的限制值,电池芯与电池终端之间的连接将断开。通常,当反向电压被撤除或电池被预置之后,经过一段时间,充电器将复位8。2系统硬件配置说明2.1主控制芯片STC89C52介绍STC89C52参数91. 增强型8051单片机,有6 机器周期和12 机器周期两种可以任意选择,指令代码兼容传统8051;2. 工作电压:5.5V3.3V(5V单片机);3.8V2.0V(3V 单片机);3.工作频率范围:040MHz,相当于普通8051 的080MHz,实际工作频率可达48MHz;4. 用户应用程序空间为8K字节;5. 片上集成512 字节RAM;6. 通用I/O 口(32 个),复位后为:P0/P1/P2/P3 是准双向口/弱上拉, P0 口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O 口用时,需加上拉电阻;7. ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片;8. 具有EEPROM 功能;共3 个16 位定时器/计数器,即定时器T0、T1、T2;9. 外部中断4 路,下降沿中断或低电平触发电路,Power Down 模式可由外部中断低电平触发中断方式唤醒;10.通用异步串行口(UART),还可用定时器软件实现多个UART;11. 工作温度范围:-40+85(工业)/075(商业);图1.1 STC89C52引脚图 Figure1.1 STC89C52 pin map2.2 TP4056TP4056是一款线性充电器,采用了完整的单节锂离子电池提供恒定电流/恒定电压。其下部带有具有散热作用的SOP8/MSOP8封装与较少的外部元件数目使得TP4056成为便携式应用的理想选择。同时它也可以适合USB电源和适配器电源工作。由于采用了内部PMOSFET架构,又有防倒充电路,所以不需要隔离二极管在外部。热反馈可对正在充电电流进行自动调节,从而在大功率操作或高环境温度条件下对芯片温度加以限制。充电电压固定在4.2V左右,而充电时电流可利用一个电阻器进行外部设置。当充电电流在达到最终浮充电压之后下调至设定值1/10时,TP4056将自动停止充电循环。当输入电压被拿掉时,TP4056会自动进入一个低电流的状态,这时会将电池漏电流降至2uA以下。TP4056在有电源时也可置于停机模式,以而将供电电流降至55uA。TP4056的其他特点例如电池温度检测、欠压闭锁、自动再充电和两个用于指示充电、结束的LED状态引脚。TP 4056的特点:高达1000mA的可编程充电电流无需MOSFET、检测电阻器和隔离二极管用在单节锂离子电池、采用SOP封装的完整线性充电器恒定电流/恒定电压操作,还可在无过热危险的情况下实现充电速率最大化的热调节功能精度达到1%的4.2V预先设定的充电电压电池电量检测的充电电流监控器输出自动的再充电充电状态双输出、无电池显示C/10充电终止待机模式下的电流为55uA2.9V涓流充电软启动限制了浪涌电流电池温度监测功能采用8引脚SOP-PP/MSP-PP封装。绝对最大额定值输入电源电压(VCC):-0.3V8VBAT短路持续时间:连续BAT引脚电流:1200mAPROG引脚电流:1200uA最大结温:145工作环境温度范围:-4085贮存温度范围:-65125引脚温度(焊接时间10秒):260图2.1 TP4056封装图Figure 2.1 TP4056 package drawing引脚功能TEMP(引脚1):电池的温度检测输入端。将TEMP管脚连接到电池的NTC传感器的输出端。如果TEMP管脚的电压小于输入电压的45%或者大于输入电压的80%,意味着电池温度过低或是过高,则充电会被暂停。如果TEMP直接接GND,电池温度检测功能就会取消,其他充电功能可以正常进行。PROG(引脚2):恒流充电电流设置和充电电流监测端。把PROG管脚接一个外部电阻到地端能够对充电电流进行编程。在预充电阶段时,它的电压被调制在0.1V;在恒流充电时,此管脚的电压会被确定在1V。在充电状态的各模式下,测量它的电压全部可以根据下面的公式来估算充电电流:IBAT=VPROG/RPROG*1200GND(引脚3):电源地。Vcc(引脚4):输入电压正输入端。此时电压为内部电路的工作电源。Vcc与BAT管脚的电压差小于30mV时,TP4056将变为低功耗的停机模式,此时BAT管脚的电流小于2uA。BAT(引脚5):电池连接端。将电池的正端连接到此管脚。如果芯片被禁止工作或者在睡眠模式,BAT管脚的漏电流会小于2uA。BAT管脚向电池供电电流和4.2V的限制电压。STDBY(引脚6):电池充电完成指示端。在电池充电完成时STDBY被内部开关拉倒低电平,表示充电完成。此外,STDBY管脚就会处于高阻状态。CHRG(引脚7):漏极开路输出的充电状态指示端。当充电器给电池充电时,CHRG管脚被内部开关拉到低电平,意味着充电正在进行;否则CHRG管脚就会处于高阻态。CE(引脚8):芯片使能输入端。高输入电平将是TP4056处于正常时的工作状态;低输入电平使TP4056处于被禁止充电状态。CE管脚可以被TTL电平或者CMOS电平驱动10。2.3 芯片介绍ADC0832模数转换芯片的介绍11ADC0832是一种8位分辨率、双通道A/D转换芯片。由于它体积比较小,兼容性比较强,性价比高而深受单片机爱好者和企业单位的欢迎,其目前已经有很高的普及率。ADC0832具有以下特点:8位分辨率;双通道A/D转换;输入输出电平与TTL/CMOS相兼容;5V电源供电时输入电压在05V之间;工作频率为250KHZ,转换时间为32S;一般功耗仅为15mW;8P、14PDIP(双列直插)、PICC多种封装;商用级芯片温宽为0Cto+70C,工业级芯片温宽为40Cto+85C;芯片接口说明:CS_片选使能,低电平芯片使能。CH0模拟输入通道0,或作为IN+/-使用。CH1模拟输入通道1,或作为IN+/-使用。GND芯片参考0 电位(地)。DI数据信号输入,选择通道控制。DO数据信号输出,转换数据输出。CLK芯片时钟输入。Vcc/REF电源输入及参考电压输入(复用)。ADC0832与单片机的典型接口电路: 图2.2 ADC0832与单片机的典型接口电路图Figure 2.2 ADC0832 and MCU typical interface circuitADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应最一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在05V之间。芯片转换时间仅为32S,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过DI数据输入端,可以轻易的实现通道功能的选择。作为单通道模拟信号输入时ADC0832的输入电压是05V且8位分辨率时的电压精度为19.53mV。如果作为由IN+与IN-输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。但值得注意的是,在进行IN+与IN-的输入时,如果IN-的电压大于IN+的电压则转换后的数据结果始终为00H。2.4 LCD液晶显示器的介绍LCD液晶屏显示与数码管相比,它更为专业也更美观。液晶显示屏有功耗小、体积小、显示内容丰富、超薄轻巧、使用方便等诸多优点,因此在通讯、仪器仪表、电子设备和家用电器等低功耗应用系统中得到了越来越广泛的应用,使这些电子设备的人机界面变得越来越直观形象,目前已广泛应用于电子表、计算器、IC卡电话机、液晶电视机、便携式电脑、掌上型电子玩具、复印机、传真机等许多方面。LCD液晶显示器,主要分为两类,一种是字符模式LCD,另一种是图形模式LCD。其中,字符模式LCD是点阵型液晶显示器,专门用来显示字母、数字、符号等。LCD1602外观如图4。 图2.3 LCD1602实物图Figure 2.3 LCD1602 physical map2.4.1 LCD模块的引脚1602LCD,每行可以显示16个字符,可显示的行数为了2行,有16只引脚,其中数据线DB0DB7与控制信号线RS、R/W、E用来与单片机连接,另外3只引脚为电源线Vss、VDD、Vo,各引脚功能如表1所示:表2.1 LCD引脚功能Tab2.1 LCD引脚符号功能说明1VSS接地2VDD+5V3V0显示屏明亮度调整脚,一般将此脚接地4RS寄存器选择0:指令寄存器(WRITE),Busyflag,位置计数器(READ)1:数据寄存器(WRITE,READ)5R/WREAD/WRITE选择1:READ0:WRITE6E读写使能,下降沿使能7DB0低4位三态,双向数据总线8DB19DB210DB311DB4高4位三态,双向数据总线DB7也是一个Busy flag12DB513DB614DB715BLA背光源正极16BLK背光源负极2.4.2 寄存器选择LCD液晶屏的内部有两个寄存器,一个是指令寄存器IR,另一个是数据寄存器DR。IR用来存放微控制器所送来的指令代码,如光标归位,清除显示等;DR用来存放欲显示的数据。显示的次序是先把预先存放数据的地址写入IR,再把要显示的数据写入DR,DR就会自动把数据送至相应的DDRAM或CGRAM地址,DDRAM是显示数据的存储器,用来存放LCD要显示的数据;CGRAM是字符产生器,用来存放设计的57点图形的显示数据12表2.2 LCD寄存器的选择Tab2.2 LCD RegisterER/WRS功能说明100写入命令寄存器101写入数据寄存器110读取忙碌标志及RAM地址111读取RAM数据0XX不动作当RS=0时,选择指令寄存器;RS=1时,选择数据寄存器。当R/W=0时,数据写入LCD控制器;当R/W=1,到LCD控制器读取数据。E:高电位使能信号线。3系统硬件电路设计该智能锂电池充电器的主要组成部分为:主控制器模块、充电控制模块、显示模块、电压检测模块、电流检测模块、模数转换模块、时钟模块、电源模块。硬件电路比较简单,操作方便。该系统由STC89C52单片机进行充电控制,对电池温度、电压、电流进行检测,从而达到对锂电池的高精度充电控制。安装好锂电池,电源接上后,充电器即可正常工作,当电池充满电后即可自动停止充电,并对锂电池进行保护13。3.1 主控制器电路STC89C52RC单片机的复位电路由电解电容C3、电阻R1与按键构成,实现充电器系统上电自动复位,同时也可以根据需要随时进行手动复位。图3.1 主控制器电路Figure 3.1 main controller circuit diagram3.2 充电电路以TP4056为核心,1管脚和3管脚接地,4管脚接电源,5管脚接电池的正极为锂电池充电。图3.2 充电电路Figure3.2 Charging circuit3.3 电压电流采集电路 智能锂电池充电器要实现对锂电池的智能充电控制,防止电压过高而过充,防止电流过大而烧坏电池,就必须实时地对被充锂电池进行电压与电流的检测,因此必须采用高精度的电压电流采集电路14。本智能锂电池充电器的电压电流采集电路由模数转换电路与电阻分压网络电路组成。模数转换电路原理图如图12示,以双通道ADC0832模数转换芯片为核心,具有8位的精度和很高的转换速度。正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。作为单通道模拟信号输入时ADC0832的输入电压是05V且8位分辨率时的电压精度为19.53mV。芯片ADC0832的模数转换参考电压Vref与其电源引脚VCC复用。图3.3 AD转换电路Figure 3.3 AD conversion circuit3.4 液晶显示电路 智能锂电池充电器要将采集到的电池电压、电流、温度信号显示出来,则需要相应的显示电路。由于LCD1602液晶显示器可以不用编码就轻松的显示出西文字符,因此该智能锂电池充电器使用LCD1602液晶显示器来作为信息状态的显示模块。LCD1602液晶显示模块 很成熟,外围与单片机的接口很简单,采用8位并口连接方式,LCD1602液晶显示电路原理图如图15示:图3.4 1602液晶显示Figure 3.4 1602 LCD3.5 系统硬件总体电路 图3.5 总电路图Figure3.5 Total circuit diagram4系统软件程序设计4.1系统软件设计说明 软件采用C语言编写程序,提高工作效率和程序的可靠性。该设计采用了模块化设计,主要包括单片机模块,电流电压采集模块和显示模块。软件设计在本系统中与硬件设计一样占十分重要的部分,基本充电功能大部分是由软件完成,功能发挥部分同样需要软件的密切配合才能顺利实现。下面将重点介绍软件结构和各功能模块的设计流程。具体软件程序见附录。4.2主程序软件流程图主程序主要控制Lcd显示模数转换后的电流和电压,并控制按键指示灯的开关。主程序软件流程图如图10所示。图4.1 主程序流程图Figure 4.1 main flowchart of FIG.4.3液晶显示器程序流程图液晶屏LCD定义显示函数,将模数转换后的电流和电压显示在液晶屏上。开机显示设计者信息。液晶显示器程序流程图如下图11所示。图4.2 液晶初始化流程图Figure4.2 LCD Initialization Flow4.4 ADC0832程序流程图ADC0832通过串行控制时序,对锂电池的电压与电流模数转换后进行采集,由单片机处理数据并通过LCD1602液晶显示。ADC0832程序流程图如图4.3所示。图4.3 模数转换流程图Figure4.3 AD conversion flowchart5系统调试 该智能锂电池充电器的LCD1602液晶显示、电池状态采集等数字程序,均是先通过Protel DXP 软件调试通过之后再下载到单片机里进行实物调试。要实时采集电压并送到ADC0832,将模拟信号转换为数字信号显示在液晶屏上。当所有模数转换数值与实际值相等的时候才能准确的进行充电与异常检测程序的调试。结束语本文中具有电流电压显示功能的锂电池充电器经过系统测试和实物认证了系统的正确性,通过实物现象的观察,确认了系统的可靠性,系统也能够达到预期的要求。实际测试的过程中,充电效果达到基本要求,由于水平有限,没有充足的时间研究出更好的电池连接方案,锂电池是焊在电路板上的,如果要更换电池,可能需要重新焊接。总之,方案还有很多待改进的地方。致谢在毕业设计论文即将完成之际,回想这几个月的努力学习,从开题到论文的顺利完成,我得到了老师和同学们的很多帮助。首先要感谢我的指导老师霍虎老师,在本论文的撰写过程中,霍虎老师从各个方面都给予我很多的指导和帮助,同时也为我提供了相关的参考资料,为我答疑解惑,提供了很多关键性的建议。霍虎老师宽广的知识面,严谨的治学态度,都让我受益匪浅。从霍虎老师身上所学到的不仅仅是专业知识,更多的是对人生的态度与思索,这将激励着我在以后的学习生活中百折不挠,奋勇前进!还有我的室友和很多同学也给了我很多的帮助,她们平时给了我很多有帮助的意见,激发了我对论题更深入思考。尤其是在我遇到困难和挫折时,她们的帮助和鼓励给了我最直接的勇气和动力。参考文献1 李治,陈赫,汪东洋等.智能锂电池充电器设计J.吉林大学学报.2012,5月.3-302 约瑟阿拉克 彼得塔尔博特.充电:电池的发展与未来N.中国能源报.2015-06-01(05)3 全球电池网.锂离子电池充电技术N.电子过程世界.2011,4.4 康华光.电子技术基础数字部分(第五版)M. 北京:高等教育出版社,2006.1.5 刘青青,郭利周.锂电池智能充电器设计方案J.中国科技信息.2005(14)6 姚和平.锂离子电池充电器设计D.西安.西安电子科技大学,2008,1.7 Shepard J D,Brush L.Market Trends in Smart Battery Packs for Portable Electronics.IEEE Battery Conference,1998,251-2538 Jose Formenti and Robert Martinez.Design Trade-offs for Switch-Mode Battery Chargers.Texas Instrument.20049 STC89C52中文资料.海纳电子资讯网:10 tp4056中文资料.南京拓微集成电路11 ADC0832中文资料12 LCD1602液晶完整中文资料13 Intersil.Digitally Controlled Potentiometer X9313 DB. intersil.: ,2004.114 Bogart,T.F.Linear integratedcircuits;applicationsM.New York J.Wiley 1983.15 Li N.C.Haviland G.L.Tuszynski A.A.CMOS tapered buffer.IEEE Journal of Solid-State Circuits.1990,25(4).附录附录A实物图:附录B主程序:#include /包含头文件 ,头文件包含特殊功能寄存器的定义#include /标准输入输出#include#include#include sbit key=P24;sbit LED_drive=P23;uchar key_flag=0;uchar onoff_flag=0,a; main(void) LED_drive=0;InitLcd(); /初始化LCDWriteCommand(0x01); /清屏DelayMs(20);show_name();DelayMs(2000);WriteCommand(0x01); while(1) lcd_pos(0x00); LCD_DisStr(V-Li:); xianshi_three(GetAD0832(1)*3.90625) ; delay_ms(10); WriteData (V); DelayMs(1); lcd_pos(0x46); LCD_DisStr(A-Li:); xianshi_three11(GetAD0832(0)*0.0392*0.0454*1000) ; delay_ms(10); LCD_DisStr(mA);DelayMs(1); if(key=0) delay_ms(100); if(key=0) key_flag+;if(key_flag=3) key_flag=0; if(key_flag=2) lcd_pos(0x40); LCD_DisStr(Auto ); if( GetAD0832(1)*3.90625 = 370 ) onoff_flag=1; delay_ms(10); if( GetAD0832(1)*3.90625 370 ) onoff_flag=0; delay_ms(10); if(key_flag=1) lcd_pos(0x40); LCD_DisStr(Open ); onoff_flag=1; if(key_flag=0) lcd_pos(0x40); LCD_DisStr(Close); onoff_flag=0; if(onoff_flag=1) LED_drive=1; if(onoff_flag=0) LED_drive=0; 模数转换:#include /包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义#include #include #include int GetAD0832(bit Channel) uchar i=0 , Data1 =0 , Data2 = 0 ; AD0832_CLK = 0 ; /时钟置低平/时钟12Mhz, 整个转换时间为224us AD0832_DI = 1 ; /开始信号为高电平 AD0832_CS = 0 ; /片选信号置低,启动AD转换芯片 AD0832_CLK = 1 ; /输入开始信号(构成一个正脉冲),时钟上升沿,输入开始信号 AD0832_CLK = 0 ; /时钟下降沿 /模拟信号输入模式选择(1:单模信号,0:双模差分信号) AD0832_DI = 1 ; AD0832_CLK = 1 ; /时钟上升沿,输入开始信号 AD0832_CLK = 0 ; /时钟下降沿 /模拟信号输入通道选择(1:通道CH1,0:通道CH0) AD0832_DI = Channel ; /选择通道0 AD0832_CLK = 1 ; /时钟上升沿,输入开始信号 AD0832_CLK = 0 ; /时钟下降沿 AD0832_DI = 1 ; /数据线置高,准备接收数据for(i=0;i8;i+) /从高位移入数据 AD0832_CLK = 1 ; AD0832_CLK = 0 ; /时钟下降沿,AD0832输出数据,高位(MSB)先 Data1 = Data11;/数据左移位,补0 if(AD0832_DI =1) Data1 = Data1 | 0x01; /如果数据为1,移入1, /如果数据为0,移入0, for(i=0;i1;/数据左移位,补0 if(AD0832_DI =1) Data2 = Data2 | 0x80; /如果数据为1,移入1如果数据为0,移入0, AD0832_CLK = 1 ; AD0832_CLK = 0 ; /时钟下降沿,AD0832输出数据,高位(M

温馨提示

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

评论

0/150

提交评论