《基于单片机的智能充电器设计本科论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的智能充电器设计本科论文.doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于单片机的智能充电器设计 目 录摘要1关键词1Abstract1Key Words1引言21 课题研究与设计指导思想21.1 课题研究背景21.2 设计指导思想21.3 智能化的功能设计要求22 主要元器件介绍及选用22.1 单片机的介绍及选用22.2 模数转换器 CS5522芯片62.3 温度传感器PT10073 几种常见电池介绍及基本参数特性83.1 几种常见电池83.2 锂离子电池基本参数特性83.3 锂离子电池的优缺点94硬件电路的设计104.1 硬件电路的总体设计思路104.2 电源电路部分104.3 测温电路部分104.4 模数转换部分124.5 充电指示部分124.6 充电控制
2、电路124.7 单片机控制部分125 软件设计145.1 程序流程图145.2 单片机的主要控制程序146 软件仿真与调试156.1 电源仿真156.2 充电器两端的电压显示部分157 总结16参考文献17附录18致谢221 基于单片机的智能充电器设计自动化专业学生 XXX 指导教师 XXX摘要:电子技术的快速发展使得各种各样的电子产品都朝着便携式和小型轻量化的方向发展,也使得更多的电气化产品采用基于电池的供电系统。为了解决各种类型的电池充电问题,所以设计了基于AT89S52单片机为核心的智能充电器。主要对单片机的工作原理、智能化设计和几种充电方式,进行了较为详细的介绍,并对系统的硬件组成以及
3、软件的设计进行了论述。该设计采用了高性能的微处理控制器和分辨率较高的的数模转换电路,来确保充电器安全与高效。在对电池的基本参数特性做出介绍的基础上,还介绍了设计的硬件系统组成,包括数据采集电路、控制电路和电源电路等部分,并对充电器的核心元件AT89S52单片机进行了完整的介绍。阐述的重点还包括了充电器的软件功能设计,不仅对软件控制系统进行了需求性分析,还可以实现充电控制系统的可靠性、稳定性、安全性和经济性。程序设计以C语言为工具,进行了详细设计和编码实现。关键词:智能充电器;单片机;A/D转换 Intellgent Battery Charger Design Based on Single-
4、chip ComputerStudent majoring in automation XXX Tutor XXXAbstract: Electronic technologys fast development causes various electronic products develops toward portable and the small lightweight direction, it also causes the more electrification products to use based on batterys power supply system. T
5、o resolve the battery charging problem , designed a AT89S52 microcontroller core universal smart charger, describes working principle, design of intelligent charger features some modes of charging ,and discussed in detail the system of hardware and software implementation. As a result of the high-pe
6、rformance micro-controller and high resolution A/D conversion circuit, ensure that the charger has a very high precision. In the basic parameters characteristics of battery is introduced on the basis of, also introduces the design of hardware system, including data acquisition circuit, control circu
7、it, man-machine interface and microprocessor controller and power part, and the core components of the charger AT89S52 single chip microcomputer was introduced in full. Focus on include the charger software function design, the software control system not only has carried on the demand analysis, mus
8、t also be charging control system reliability, stability, security and economy. Programming with C language as the tool, has carried on the detailed design and code implementation.Key Words: Intelligent battery charger;Single-chip computer;A/D convert基于单片机的智能充电器设计引言随着电子技术的迅猛发展,越来越多的手持式电器开始出现,对性能高、尺寸
9、小、重量轻的电池以及智能化充电器的需求也越来越大。电池技术的不断进步也要求更复杂的控制算法以实现快速、安全、有效的充电。因此需要对充电过程进行更精确、缜密的监控,来缩短充电时间、尽量达到最大的电池容量,并防止电池被损坏。智能充电器就在这种需求环境下应运而生。1 课题研究与设计指导思想在人们日常生活和工作中,随着各种电子产品的普及应用,各种类型的充电器就不可或缺。目前,市场上卖得最多的是便携式旅行充电器,但是从充电控制电路上分析,只有很少部分充电器才能真正意义上被称为智能充电器。1.1 课题研究背景单片机在蓄电池充电器领域有着比较广泛的应用,利用它的可编程及处理控制能力可以实现充电器的智能化设计
10、。充电器种类很多,但一般只有单片机参与处理和控制充电过程,可以自动有效的计算电池的已充电量和剩余的充电时间,也可以改变参数来适应其它方面的设计要求,才可以称为智能充电器。并且充电控制系统中的管理电路还应具有保护功能,可以避免电池的过充和过放对电池造成损害。1.2 设计指导思想(1)充电过程的实现。充电可分为两个方面的控制:一是充电过程的程序控制;二是提供基本充电电压,充电电压波动应控制在稳定范围以内,同时降低充电电流,当充电电流逐渐减小到某一规定的值时,可结束充电过程。(2)充电器智能化的实现。引入单片机实时采集电池的电压和电流信号,并对充电过程进行智能控制,以实现智能化。1.3 智能化的功能
11、设计要求本设计是基于AT89S52单片机的控制功能实现的电池充电方面的应用,充电器在单片机的控制下,可以实时采集电池的电压和电流,并对充电过程进行智能控制。不但可以自动计算电池的已充电量和剩余的充电时间,还可以改变参数来适应各种不同电池的充电,以及防止电池过充或过放电对电池造成损害。2 主要元器件介绍及选用2.1 单片机的介绍及选用大多数充电器都是采用大电流的快速充电法的方法,如果电池被充满了,人们不及时断电就会使电池发烫,甚至会严重损害电池的寿命。一些成本比较低的普通充电器可能采用电压比较法,为了防止过度充电,基本上充电到一定的程度就停止大电流快充,转而用小电流来补充充电。一部分的充电器不但
12、能在很短时间内将电量充足,而且还可以对电池起到一定的维护作用,修复由于使用不当造成的记忆效应,即容量下降现象。设计比较好的充电器往往采用专用充电控制芯片配合单片机控制的方式。专用的充电芯片具有业界公认较好的-v检测,可以检测出电池充电饱和时发出的电压变化信号,比较精确地结束充电工作,通过单片机对这些芯片的控制,可以实现充电过程的智能化,例如,在充电后增加及时关段电源、蜂鸣报警和液晶显示等功能。充电器的智能化可以缩短充电的时间,同时能够维护电池,延长电池使用寿命。51系列单片机是当前使用最为广泛的8位单片机系列之一,其丰富的开发资源和较低的开发成本,使51系列单片机现在以至将来都仍会有强大的生命
13、力。在众多的51系列单片机中,AT89系列单片机在我国得到了极其广泛的应用,AT89系列单片机是美国Atmel公司的8位机产品。他的特点是片内含有Flash Memory,Flash Memory是一种电可摩除和电写入的闪速存储器(记为FPEPROM),在系列的开发过程中可以很容易地进行程序修改,使开发调试更为方便1。2.1.1 单片机的功能特点介绍 在微机中央处理器(CPU)基础上,将I/O接口电路、时钟电路和一定容量的存储器等部件集成在一个芯片上,再加上一些必须的外围组件,如晶体振荡器等,就可以组成了一个比较完整的计算机处理系统。因为这类计算机系统基本部件在同一微处理控制芯片内,因此被称为
14、单片微控制器、微控制单元或嵌入式控制器,简称单片机2。目前,8位高档机和16位机在单片机应用中占主导地位,产品众多,已有几十个系列、几百个型号,除了通用单片机以外,集成更多资源,如A/D转换器、D/A转换器、“看门狗”(Watchdog)电路、LCD控制器、网路控制模块等,将单片机嵌入式系统和Intenet连接起来已是一种趋势。还有专用单片机产品,如专门用于数据处理(图像和语言处理等)的单片机。总之,单片机正在向微型化、低功耗、高速、集成、高集成度、多资源、网络化、专用型方向发展3。单片机的芯片是控制系统的核心部件,它不仅具备通用微机处理器的数值计算功能,还应该具有灵活、强大的控制功能,以便对
15、系统的输入量做到实时监测,从而实现自动化的控制功能。单片机处理器的发展方向和技术特性如下:(1)单片机中的CPU具有很强的抗干扰性,并且具有很宽的温度工作范围(按工作温度分类,有民用级、工业级、汽车级及军用级)。(2)单片机中的CPU具有很高的可靠性能。在工控过程中,任何一点差错都有可能造成非常严重的后果,所以单片机芯片大都采用看门狗技术来保证可靠性,通过定时“复位”方式唤醒处于“失控”状态下的单片机芯片。(3)单片机CPU电磁辐射量小。高可靠性和低电磁辐射指标决定了单片机系统的时钟频率很低。为此,单片机芯片一般采用HARVARD双总线结构,即指令和数据存储器空间相互独立,并通过各自的数据总线
16、与CPU相连,使取指和读/写数据能同时进行。双总线结构能提高数据的吞吐率,以便在不降低数据吞吐率的条件下使用较低的时钟频率。(4)单片机的控制功能很强大。(5)单片机的指令系统比较简单。(6)单片机芯片往往不是单一的数字电路芯片,而是数字、模拟混合电路系统,即单片机芯片内一般集成了一定数量的模拟比较器,A/D及D/A转换电路。(7)单片机CPU采用嵌入式结构。尽管同一系列的单片机品种、规格繁多,但彼此差异却不大。2.1.2 单片机的应用 因为单片机具有如上所述众多的优点,因此在生活以及工业生产等诸多领域,得到了越来越广泛的应用,单片机的主要应用领域有:工业控制方面,如在工业生产过程中参数(如压
17、力、温度、液位、流量等)的控制,集数据处理功能于一体,如转速测试仪、流量监控仪、智能手机及电子秤等等。单片机上有并行I/O接口和串联I/O接口,可用于通信接口,实现计算机网络通信。由于单片机体积小,控制能力强,且片内有定时器/计数器,所以广泛应用于家用设备中,如空调、洗衣机、微波炉及智能报警器等等。另外,由于单片机价格相对较低且可靠性高、控制功能强大,因此也非常适合用在充电器的智能充电的控制上。2.1.3 AT89S52单片机的选用 单片机AT89S52,是美国ATMEL公司生产的一种低功耗,高性能COMS8位微控制器,片内具有8K 在系统下可编程封装Flash存储器。不但拥有灵巧的8 位CP
18、U ,还具有系统可编程Flash,使得AT89S52可以为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。同时AT89S52与C51产品指令和引脚完全兼容,可适用于众多的控制领域。8051是51系列单片机的典型产品,8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,其结构图如图2-1所示4:程序存储器数据存储器定时计数器并行I/O口串行通信口中断系统数据总线地址总线控制总线8051时钟图2-1 8051内部结构AT89S52管脚图如图2-2所示: 图2-2 AT89S52管
19、脚图P0驱动器P2驱动器P0.0-P0.7P2.0-P2.7程序地址寄存器缓冲器程序计数器 PC DPTRRAM地址寄存器RAMB寄存器ACCTMP2TMP1ALUSP指针P0口锁存器P2口锁存器中断、串行口和定时器指令寄存器定时和控制逻辑OSCP1锁存器P3锁存器P1驱动器P3驱动器PSRROMP1.0P1.7P3.0P3.7 图2-3 MCS-51内部结构框图图2-3是MCS-51系列单片机的内部结构示意图。AT89S52部分管脚定义说明5: (1) VCC管脚:系统供电电源。 (2) GND管脚:接地管脚。 (3) P0端口(P0.0P0.7):此端口是8位开环的双向I/O端口。 (4)
20、 P1端口(P1.0P1.7):此端口与P0端口不同的是具有内部上拉电阻。(5)P2端口:此端口也是一组具有内部上拉电阻的双向I/O端口。(6)P3端口:具有内部上拉电阻的双向I/O端口。(7)RST管脚:复位输入,振荡器工作时,单片机在RST引脚出现两个机器周期以上高电平时复位。(8)ALE/PROG管脚:访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节,单片机执行外部程序时,应设置ALE 禁止位无效。(9)/PSEN管脚:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52 由外部程序存储器取指令(或数据)时,每个机器周期输出
21、两个脉冲。在此期间,当访问外部数据存储器,PSEN信号被跳过两次。(10) XTAL1管脚:振荡器反相放大器及内部时钟发生器的输入端。(11)XTAL2管脚:振荡器反相放大器的输出端。2.2 模数转换器 CS5522芯片模拟数字转换器 ,即A/D转换器,简称ADC,它可以将一个将模拟信号转变为一个数字信号。通常意义上的模数转换器是将一个输入的电压信号转换为一个输出的数字信号。又因为数字信号本身没有实际意义,而仅仅表示了一个相对的大小,所以任何一个模拟数字转换器都要有一个模拟的参考量来作为其转换的标准,通常情况下的参考标准为最大的可转换信号量大小。而输入信号相对于参考标准信号的大小,就是输出的数
22、字信号。转换的精度是模拟数字转换器最为重要的指标,通常会用输出的数字信号的位数的多少来表示。转换器的性能好坏,一般取决于准确输出的数字信号的位数,准确输出的数字信号的位数越多,则表示其分辨输入信号的能力越强,性能也就越好。在这里,我选择了24位的高精度串行A/D转换器CS5522。CS5522是Cirrus Logic公司生产的24位高精度串行A/D转换器,其引脚排列如图2-4所示。它含有多通道的多路编程增益放大器,数字滤波器以及片内系统校准和自校准标准电路。CS5522内含通道选择寄存器、配置寄存器和增益寄存器。通过单片机对CS5522寄存器的读写控制,可以实现多通道、高精度的A/D转换。C
23、S5522的主要性能如下6:(1) 24位A/D转换精度;BVXOUTSD0DGNDVD+SCLKVREF+VREF-A1N2+A1N2-A1XINCSSD1CPDA0A1N1-A1N1+VA+GND图2-4 CS5522引脚排列及说明(2) 低输入电流(100pA),内带一个斩波放大器;(3) 2个差分输入模拟通道,每个通道都可以进行自校准和系统校准;(4) 单/双极性缓冲输入,量程有25mv、55mv、100mv、1v、2.5v、5v等;(5) 有单片机通信的三线接口或四线接口;(6) 低功耗:5.5mW。需要注意的是,在A/D转换数据结束后,需要先写8个1给A/D,使其返回到命令状态,再
24、用24个脉冲读出转换数据,如果先写8个0给A/D,则A/D转换器不是返回命令状态而是继续进行A/D转换。其读写操作时序如图所示。2.3 温度传感器PT100PT100温度传感器具有抗振动、稳定性好、准确度高、耐高压等优点。 铂热电阻的线性较好,在0100摄氏度之间变化时,最大非线性偏差小于0.5摄氏度。铂热电阻阻值与温度关系为:(1) -200t0时,RPt100=100*1+At+B*t2+C*t3*(t-100) ;(2) 0t850时,RPt100=100*1+At+B*t2 ;其中,A = 0.00390802;B = -0.000000580;C = 0.00000000000427
25、35。可见Pt100在常温0100摄氏度之间变化时线性度非常好,其阻值表达式可近似简化为:RPt=100(1+At),当温度变化1摄氏度,Pt100阻值近似变化0.39欧。 3 几种常见电池介绍及基本参数特性3.1 几种常见电池现代消费类电器主要使用如下四种电池: 密封铅酸电池 (SLA) 锂电池(Li-Ion) 镍镉电池 (NiCd) 镍氢电池(NiMH)在正确选择电池和充电算法时需要了解这些电池的背景知识。密封铅酸电池(SLA) 密封铅酸电池主要用于成本比空间和重量更重要的场合,如UPS和报警系统的备份电池。电池以恒定电压进行充电,辅以电流限制以避免在充电过程的初期电池过热。只要电池单元电
26、压不超过生产商的规定( 典型值为2.2V),SLA电池可以无限制地充电。锂电池 (Li-Ion) 和一般的电池相比,锂电池具有最高的能量/ 重量比和能量/ 体积比。锂电池以恒定电压进行充电,同时必须要有电流限制以避免在充电过程的初期电池过热。当充电电流下降到生产商设定的最小电流时就要停止充电。过充电将造成电池损坏,甚至爆炸。锂离子电池可以分成两大类:不可充电型和可充电型,最大特点是比能量高。比能量指的是单位重量或单位体积的能量,用Wh/Kg或Wh/L表示。镍镉电池(NiCd) NiCd电池目前使用得很普遍。它的优点是相对便宜,易于使用;缺点是自放电率比较高。典型的NiCd电池可以充电1000
27、次。失效机理主要是极性反转。在电池包里第一个被完全放电的单元会发生反转。为了防止损坏电池包,需要不间断地监控电压。一旦单元电压下降到1.0V 就必须停机。NiCd电池以恒定电流的方式进行充电。镍氢电池(NiMH) 在轻重量的手持设备中如手机、手持摄象机等等,镍氢电池是使用最广的。这种电池的容量比NiCd的大。由于过充电会造成NiMH电池的失效,在充电过程中进行精确地测量以在合适的时间停止是非常重要的。和NiCd电池一样,极性反转时电池也会损坏。NiMH电池的自放电率大概为20%/月。和NiCd电池一样,NiMH电池也为恒定电流充电。3.2 锂离子电池基本参数特性7 参数特性如下:(1)高能量密
28、度锂电子电池的能量密度可以达到360Wh/L,158Wh/Kg,是NI-CD及NI-MH电池的两倍以上。(2)高工作电压一般放电电压为3.7V。(3)高负载特性一般锂电子电池的最大连续放电电流可达2CmA。(4)放电特性稳定即使在电池寿命接近终止时,光宇锂离子电池仍保持着良好的放电稳定性。(5)快速充电特性锂离子电池可接受的最大充电电流可达1CmA,而且恒流充电时间可达50分钟以上。(6)长循环寿命重复使用次数多,循环充电特性好,可以重复5001000次充放电。锂离子电池的这些特点促进了便携式产品向更小更轻的方向发展,使得选用单节锂离子电池供电的产品也越来越多。3.3 锂离子电池的优缺点 锂离
29、子电池很少发生结晶化的反应,这种反应是产生记忆效应的原理。但是,锂离子电池在多次充放电之后仍会性能下降,原因是非常复杂的。最主要的是正负材料的变化,从分子角度看,正负极能容纳锂离子的空穴会塌陷,这样就会堵塞,影响电流的充放;从化学角度来看,正负极材料的钝化,会产生一些稳定的化合物,这样也会也会影响性能。从物理角度看上,由于充放电过程中难免会有一些摩擦,碰撞,这样会使外部材料慢慢流失,甚至脱落。这三方面的原因都会使锂离子电池在充放电过程中参加导电的锂离子丢失。过度的充放电,都会对造成电池的损害或降低使用寿命。过度的放电可能会导致负极碳过度释放出锂离子而使其片层结构出现塌陷,过度的充电则可能会把太
30、多的锂离子硬塞进负极碳结构里面去,从而使其中一些锂离子再也没办法释放出来。所以锂离子电池通常会配有充放电的控制电路的,来实现智能的充电控制,以减少对电池的损害,延长使用寿命。锂离子电池一般都带有管理芯片和充电控制芯片。其中管理芯片中有一系列的寄存器,存有容量、温度、ID、充电状态、放电次数等数值。这些数值在使用中都会逐渐变化。电池的智能化充电过程就是通过充电控制芯片的作用来实现的。锂离子电池的充电过程具体分为两个阶段,一是恒流快充阶段(电池指示灯呈黄色时),二是恒压电流递减阶段(电池指示灯呈绿色闪烁)。开始充电时,电池的电压以较大的斜率升压,当到达电池的标准电压之后,在控制芯片的控制下转入恒压
31、充电状态,此过程中电压变化不大,电流在逐渐减小,当充电电流几乎降到零时,可认为电池电量已满,停止充电8。电量统计芯片通过记录放电曲线(电压、电流、时间)可以抽样计算出电池的电量。而锂离子电池在多次使用后,放电曲线是会改变的,如果芯片一直没有机会再次读出完整的一个放电曲线,其计算出来的电量也就是不准确的。所以我们需要深充放来校准电池的芯片。锂离子电池的缺点是非常害怕过充,所以对充电器要求比较高,而且必须要有保护电路。锂离子电池一般要求的充电方式是恒流恒压,为了有效的利用电池容量,还需要将锂离子电池充电调到最大电压值,但是过压充电可能会对成电池造成损坏,这就对充电器要求有很高的充电控制精度。另外,
32、电压过低的电池充电时还需要进行预充,所以充电器要带有热保护和时间保护功能,为电池进行必要的充电保护。由此可见,要大力推广使用锂离子电池,智能高效的充电器设计就成为必然选择。4 硬件电路的设计4.1 硬件电路的总体设计思路对充电器原理、AT89S52单片机的功能特点有了了解和掌握,并对各种元器件和电路图进行分析和比较后,开始进入硬件电路的设计。智能充电器总体设计框图如图4-1所示:蜂鸣报警器充电状态指示AT89S52单片机充电控制电路光耦隔离电路电压转换电路电源图4-1 智能充电器总体设计框图各模块主要功能单片机模块:实现智能化控制,如电压电流控制,自动断电,报警提示等。充电过程控制模块:实现对
33、充电过程的控制。电压转换及光耦隔离模块:利用三端稳压集成电路LM7805将输入电压转换为5v电压,该电压送至充电控制电路之前需经过光耦隔离电路。4.2 电源电路部分设计中,要供电给AT89S52和LCD显示模块两部分,而一个LM7805的输出电流不足,所以将AT89S52和显示模块分别供电,因此实际电路中用到了两片LM7805。下面就一个电源电路给出设计方案,另一个同理,其原理图如图4-2所示。4.3 测温电路部分电池在充电末期,负极发生氧复合反应产生热量,使电池温度升高。由于电池温度升高将导致充电电流增大,为控制充电电流,可在电池外壳上设置温度传感器或电阻等温度检测元件。当电池温度达到设定值
34、时,电池充电电路被切断9。图4-3即给出了电池温度检测简图和电池温度与充电时间的关系图。图4-2 电源电路设计原理图开关电源恒流源电池组温度传感器 图4-3 电池温度检测简图图4-4 传感器放大电路传感器电路包括传感器测量电桥和放大电路两部分,其电路结构如图4-4所示。R2、R3、R4和Pt100组成传感器的测量电桥电路,为了保证电桥输出电压信号的稳定,需要电桥的输入电压通过TL431调节稳定到2.5V。然后从电桥获取的差分信号会通过两级运放放大后输入单片机中。电桥的一个桥臂采用可调节电阻R3,通过调节R3电阻大小可以调整输入的差分电压信号大小,一般可以用来调整零点。 放大电路使用的元器件是L
35、M358集成运算放大器,并且放大电路采用两级放大,这样可以避免单级放大倍数过高所引起的非线性误差,提高准确性。前一级放大倍数约为10倍,后一级的放大倍数约为3倍。温度在一般在0100度之间变化,当温度升高时,Pt100的电阻值会变大,输入放大电路的差分信号也会随之变大,放大电路的输出电压Av相应的会升高。4.4 模数转换部分为了便于单片机对CS5522的控制,可将CS5522的CS与单片机直接相连,为低电平时,单片机可以对CS5522进行相应的读写控制。CS5522与单片机的接口如图4-5所示: CSSDISDOSLKCS5522AT89S52P1.0P1.1P1.2P1.3图4-5 CS55
36、22与单片机接口图利用AD采集数据,进行温度与电压采集,从而控制充电器的充电电流大小,判读充电器是否停止充电。4.5 充电指示部分通过对充电器的模拟采集信号的判断,可以判断出是充电还是停止充电状态,其充电指示电路如图4-6。4.6 充电控制电路充电控制电路是智能充电器的关键部分,图4-7是其充电控制电路原理图。该电路由单片机片内模拟电路模块和片外的MOSFET开关管、肖特基二极管、滤波电感、滤波电容等器件组成。4.7 单片机控制部分单片机部分的电路原理图见图4-810。其中,U1为单片机AT89S52,这是智能控制控制中心,其可通过外部中断口/INT0(12脚)响应充电芯片输出的充电状态,并通
37、过P2.0口输出控制信号控制隔离光耦6N137,随时启动或关断充电电源。LS1是蜂鸣器,可由单片机的P2.1脚控制发出报警声提示。图4-6 充电指示电路图图4-7 充电控制电路图图4-8 单片机部分电路原理图5 软件设计软件设计方面的程序编写,使用的是C语言。C语言是一种计算机的程序语言,兼具高级语言和汇编语言的的优点。具有编译型的结构化程序设计功能,简单的语法结构和强大的处理功能,可以实现对硬件系统的直接控制11。5.1 程序流程图为了方便程序的设计,使自己在设计过程中做到思路清晰。这里首先画出了程序流程图,后面根据流程图具体设计编写程序。其主程序流程图如图5-1。具体来讲,这次设计课题的主
38、要内容是在充电器的充电过程中,采集参数,进行电压、电流、温度的实时显示与智能控制。电池安装完毕,接通电源后,程序进行初始化,进入空语句,等待中断触发。定时器中断触发后3s,检测是否有第二次中断触发,若没有则认为充电完毕并关闭蜂鸣器,切断充电电源。若有第二次触发,则认为充电出错并关闭外部中断和定时器中断。5.2 单片机的主要控制程序根据流程图可以比较容易的编写出单片机的主要控制程序,并实现智能化的充电器控制功能。具体的AT89S52单片机主要控制程序见附录12。YesNoYes充电出错t _count +关闭T0计数t _count 600?定时器0服务子程序int 0_count=1?充电完毕
39、,蜂鸣器报警,切断电源结束No启动T0计数,同时进行A/D转换,显示电压初始化开始关闭T0中断和外部中断 图5-1 主程序流程图6 软件仿真与调试6.1 电源仿真电源设计部分输出5V电压,仿真时用multisim软件,画好电路图之后运行,打开示波器便显示电压值13。6.2 充电器两端的电压显示部分(1)在Keil程序里边新建项目,名称为“充电器显示”,并选择单片机型号为AT89S52。(2)执新建文件,输入源程序保存为充电器显示.C,并保存,然后将源程序添加到项目中。(3)执行菜单命令“Project”“Options for Target Target 1”,在弹出的对话框中选择“Outpu
40、t”选项卡,选中“Greate HEX File”。(4)编译源程序,得到HEX”文件。(5)在proteus仿真平台上建立仿真原理图,并将程序上载到虚拟芯片上调试及运行。7 总结通过本次毕业设计,切切实实加强了我独立思考问题的能力,以及克服着手查资料时的无聊不良情绪。一开始拿到这个课题确实也是一头的雾水,不知道该如何的下手,也就在毕业设计的开始阶段,XXX为我指出了此课题的大概方向和需要查阅的相关书籍以及在后面会遇到的主要问题,当时可谓受益颇多。同时,也弥补了一些我在单片机知识上的漏洞,在以后的学习过程中消除了一些障碍。在毕业设计的过程中,让我熟悉了单片机的设计流程,通过一步步解决疑惑来完成
41、我的设计,同时也大大提升了自己知识水平和能力。当今社会科技高速发展,电池产业的也是飞速发展,已经渗透到各个电子产业,从我们平时用的MP3,手机到笔记本电脑,处处都有电池的身影,没有电池提供电能,所有电子产品就会变成一堆垃圾。我选择这个题目,感觉有与时俱进的意义。这次毕业设计的题目是基于单片机的智能充电器的设计,从中可以看出主要器件是单片机,其中AT89S52单片机在此设计中起到的是控制充电器的过程,控制过程是全面的,并不是单纯得控制我们所想到的充电,断电过程,而是更加高效、安全、细分化的充电过程,本次设计所实现的充电过程是:预充、快充、满充、断电、报警等过程,这样就会高效的充电,并且充电过程中
42、不会发生过度充电的结果,影响电池的寿命。由于本人的能力有限,在编程过程中走了不少弯路,而且有时把一些本来很简单的问题复杂化了,最终在查阅大量的参考资料以及指导老师和同学的帮助下才得以顺利完成了编程。在以后的学习过程中,只要有条件,有机会,我一定要把这个设计的实物完成,使这个设计切切实实得能得到应用,造福社会。参考文献 1 李朝青.单片机原理及接口技术M.北京:北京航空航天大学出版社,2005.2 潘永雄.新编单片机原理与应用M.西安:西安电子科技大学出版社,2008.3 徐伟祥,刘旭敏.单片微型机原理及应用M.大连:大连理工大学出版社,1996. 4 楼然苗,李光飞.51系列单片机设计实例M.
43、北京:北京航空航天大学出版社,2003.5 余永权单片机应用系统的功率接口技术M北京:北京航空航天大学出版社,1993.6 胡春海.CS5522型A/D转换器及其在小角度测量中的应用J.国外电子元器件,2005(11):13-18.7 谭浩强.C程序设计(第二版) M .北京:清华大学出版社,1999.8 杨先畴.充电手电筒的改进与使用J.家庭电子,2004(1):11.9 夏路易,石宗义.电路原理图与电路板设计教程M.北京:希望电子出版社,2002.10 朱定华.单片机原理与接口技术M.北京:电子工业出版社,2001. 11 吴宇平,戴小平.锂离子电池应用与实践M.北京:化学工业出版社,20
44、04.12 郭东太.基于单片机的智能电器控制原理及设计D.天津:河北工业大学,2008.13 郑步生.Multisim200l电路设计及仿真入门与应用M.北京:电子工业出版社,2002.附录AT89S52单片机主要程序:/防止BattCharger.h被重复引用的h文件#ifndef_BATTCHARGER_H #define_BATTCHARGER_H#include sbit GATE = P30;sbit BP = P31;uint t_count,int0_count;#endif/*主程序*/#include reg52.h#include ABSACC.h#include intrins.h#include BattCharger.h#define uchar unsigned char#define uint unsigned int#define PORTA4 XBYTE 0x7F8Fuchar tab=0xc0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0;uchar tab2=0xC7,0xCB,0xD3,0xF3;uchar SEGPT2=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;unsig