设计题目:智能手机充电器
专业:电气工程及其自动化
年级:08级
学生姓名:袁海东
学号:
指导老师:马冬梅
第1页
智能手机充电器设计
摘要
随着微电子技术的快速发展,各种小型化的便携式设备日益增多,为了能
够更加有效地使用这些电子产品,可充电电池得到快速发展,可充电电池得
发展必将带领充电器的发展。因为充电电池的问题一直是人们所关心的问题,
正确的充电方法可以确保电池的寿命。充电电池的充电方法有多种多样,不
同的充电方法对充电器的线路有不同的要求,自然影响到成本。记忆效应是
充电电池的一大天敌,一般认为是长期不正确的充电导致的,它可以使电池
早衰。记忆效应可使电池无法有效的充电,出现一充就满,一用就完的现象。
防止电池出现记忆效应的方法是确保电池“充足放光”的原则,也就是说在
充电前最好将电池内残余电量放光,充电时一次充足。对于一些搁置时间长
久,失去活性的电池可以尝试用大电流冲击的方法试图激活。综上所述,为
了能够使手机长期有效的使用,确保充电电池的寿命,就需要对手机电池进
行智能充电。因此本产品采用锂离子电池充电器ICMAX1898,通过AT89S51
控制可以实现预充,快速充电,及恒压充电。另外,可以通过设置可以方便
改变快速充电的电流和充电时间,还可以监控充电过程中的各个状态。实现
电路简单,成本较低,而且充电效果很好,包括安全性高,耗时短,对电池
损坏小,满足一般用户的要求。
所使用的锂离子电池有别于液态锂电池的金属外壳,一旦发生安全隐患,
不会爆炸,只会鼓胀;重量轻,比钢壳液锂轻40%,比铝壳液锂轻20%;容
第2页
量大,越薄越有容量优势;内阻小,比常规电池内阻要小,使得有效放电容
量要比其它电池高;形状可定制,可根据客户的要求灵活定制电池的厚度、
形状;放电平台高,聚合物锂电池采用胶态电解质,具有更平稳的放电特性
和更高的放电平台;工作电压高;能量密度高;循环寿命长;无记忆效应,
自放电小,无污染。适用范围:通讯设备(移动电话、网络电话、对讲机、
蓝牙耳机),移动办公设备(笔记本计算机、PDA、便携式传真机、打印机),
影像设备(数码相机、摄像机、移动DVD、移动电视、MP3、MP4),其它(手
电筒、矿灯、玩具、航模)。
关键词:MAX1898,7805,单片机
第3页
目录
第一章:绪论..................................................................................................................................5
1.1课题背景............................................................................................................................5
1.2课题设置技术...................................................................................................................6
1.3选题意义...........................................................................................................................6
第二章:系统的硬件设计............................................................................................................7
2.1单片机的选择...................................................................................................................7
2.2系统复位电路的设计.........................................................................................................7
2.2.1复位电路的可靠性设计..............................................................................................8
2.3系统时钟电路的设计.........................................................................................................9
2.4系统电源模块的设计.......................................................................................................10
2.4.17805简介..................................................................................................................10
2.4.27805使用注意事项...................................................................................................10
2.5充电管理芯片的选择.......................................................................................................11
2.5.1芯片MAX1898的特点............................................................................................11
2.5.2芯片MAX1898的原理.............................................................................................12
2.6MAX1898电源模块的设计..............................................................................................13
第三章:系统的软件设计..........................................................................................................14
3.1主程序的设计....................................................................................................................14
3.2定时器中断服务程序的设计.............................................................................................15
3.3外部中断服务程序............................................................................................................17
第四章:结论................................................................................................................................19
第4页
第一章绪论
1.1课题背景
随着社会的快速发展,手机越来越成为人们生活中不可或缺的一部分。如果某人的手
机没法使用,将对他的工作、生活造成巨大的影响。而外出手机电池没电,有没有适用的
手机电池充电器,是造成手机无法适用的最常见原因。因此,作为流动人口大量集散的客
运站、旅馆等场所,为所有市场上出售的各种类型的手机配备手机电池充电器,以方便旅
客的工作和生活,提高这些服务场所的服务质量,以提高自身的竞争力,就成为迫切的问
题。本课题充分利用单片机的强大功能,进行了大量的软件设计,用软件完成了绝大部分
任务辅以简单的外围电路,即实现了对目前市场上所售的所有手机进行充电,且便于集中
管理的功能。
目前,市场上手机充电器种类繁多,但其中也有很多质量参差不齐的不合格产品。很
多厂家生产的充电器不合格,其主要问题出现在与交流电网电源的连接,辐射骚扰场强和
充电电压几个方面。另外,一些产品的低温性能、额定容量、放电性能、保护性能等方面
存在质量问题。这些质量问题会影响到手机的正常使用,还会影响手机的使用寿命,严重
时还可能伤害消费者。目前手机充电器主要有履行充电器,座式充电器和车载充电器。
充电方式,目前主要有大电流的快速充电法和电压比较法充电,不同充电方式导致其充电
效果不同。由于采用大电流的快速充电法,所以在电池充满后如不及时停止会使电池发烫,
过度的充电会严重损害电池的寿命。一些低成本的充电器采用电压比较法,为了防止过充
一般充电到提示就停止大电流快充,采用小电流涓流补充充电。这时充电器上充满的指示
灯会亮起,如果用户此时急于取下电池,无疑电池只充了一部分,而且由于电压比较法存
在离散型,所以所谓充满电也只是一个理论值,很难精确掌握,此时,对于镍氢电池则造
成电池的记忆效应,使电池的存量减小,损害电池的寿命。而如果用户电池充电时间长一
些,则易造成过充。生产的原装履行充电器和座式充电器,设计上都采用了越来越精密的
保护电路或开关电路设计,对电池的充电起到了良好的保护作用。目前,手机充电器可
分为单槽形状和双槽型充电器,单槽型充电器正在受到双槽型的攻击。双槽型充电器出了
具有慢速充电、快速充电、放电及镍氟、镍氢电池简冲的标准功能外,还有部分产品带有
自动温度控制与电压控制,严防过充的功能,因而消费者应将倾向于选择双槽型充电器。
随着手机种类的日益增多,各种充电器因机型不同,电源端口的大小也不相同,从而不能
互换使用,给消费者带来了不便。标准型充电器,是指可以连接所有手机底端电源插座端
口的充电器。而且,生产的手机的电源端口将统一为适用于标准充电器的规格。这样,消
费者将不必在每次换手机时同时购买新的充电器。由此可见,充电器在从座式向便携式、
双槽式等方向发展的同时,也开始向标准化、通用化的方向发展。手机充电器的待机耗
电量的降低逐步成为充电器的设计过程中的一个重要环节。相比于以前的充电器,今后生
产的产品将会在各项功能完善的同时进一步降低本身的待机耗电量。为了达到这一目标,
可以设计一个判断适配器是否连接,当未连接负荷时将适配器的直流输出方电路切换到高
阻抗电路上。负荷手机的,通过采取这一措施可以大幅减少待机时电路的消耗电量。另外,
还可以在输入交流方电路中设置切换电路。在未连接负荷时,通过开关切换电路来减少供
应给直流输出方电路的功率从而减少耗电量。目前一些大的厂家生产的手机充电器都具
有以下特点:宽范围输入或多个电压可选具备限流保护,电流短路与反充保护线路设计体
积小、重量轻、自动快速充电、充满电后自动关断。另外,有的充电器还有自动识别锂离
第5页
子、镍氢、镍电池组具有放电功能充电状态显示低噪声模拟微电脑控制系统等特点。
1.2课题设置技术
该手机电池充电器的基本设计:选用合适的外围器件、单片机等设备。利用单片机控
制,实现对目标市场上出售的手机电池的万能充电。其主要设计目的包括:1)利用单
片机,通过外围电路,检测电池的充电状态,实现对电池充电的智能控制,以最大限度地
保护电池寿命。2)使现充电器具备强大的功能扩展性,以便为该充电器的后续功能升级
提供平台。3)使该充电器的综合成本尽可能低
1.3选题意义
由于手机的迅速普及及其在人们生活中所发挥的越来越重要的作用,为外出未携带手
机电池充电器的人提供便捷安全的手机充电服务,就显得尤为迫切。而服务商需要的是一
种物美价廉的手机电池充电器,以便能得到更好的效益,因此,市场急需微型计算机控制
的充电器,以满足人们的需求。本课题充分利用单片机控制,对手机电池进行智能充电,
最大限度地保护了电池的寿命,是一款真正意义上的微电脑控制充电器。同时,由于大量
的工作由单片机软件来实现,简化了外围电路,从而大大降低了成本。另外,作为一种功
能强大的平台,该手机电池充电器具有很好的功能扩展性,为后续技术升级,以进一步满
足市场的需要,提供了条件从而很好地填补智能手机电池充电器这一市场领域空白。
第6页
第二章系统的硬件设计
2.1单片机的选择
单片机在一块芯片上集成了一台微型计算机所需要的基本部件。它在硬件结构、指令
功能等方面均有独到之处,其特点如下:
性价比高。单片机性能稳定,功能强大,价格便宜。
体积小,集成度高、可靠性高。单片机将一台计算机所需要的基本部件集成在一块芯
片上,减少了各部件间的连线,能大大地提高运行速度和抗干扰能力。
控制功能强。为了,满足工业控制的需要,单片机有很强的位处理功能。在其他的逻
辑控制功能等方面,也都优于一般的8位微处理。
单片机系统配置灵活、方便。由于单片机带有一定数量的接口电路,容易构成各种规
模的应用系统。
单片机类型多。单从ROM类型来说,单片机的只读存储器有ROM、EPROM、EEPROM、Flash
Memory等多种,可以根据实际需要进行选择。
由于充电器多采用大电流的快速充电法,在电池充满后如果不及时停止会使电池发烫,
过度的充电会严重损害电池的寿命。一些低成本的充电器采用电压比较法,为了防止过充,
一般充电到90%就停止大电流快充,而采用小电流涓流补充充电。
手机电池的使用寿命和单次使用时间与充电过程密切相关。锂电池是手机最为常用的
一种电池,它具有较高的能量重量比、能量体积比,具有记忆效应,可重复充电多次,使
用寿命较长,价格也越来越低。锂电池对于充电器的要求比较苛刻,需要保护电路。为了
有效利用电池容量,需将锂电池充电至最大电压,但是过压充电会造成电池损坏,这就要
求较高的控制精度。另外,对于电压过低的电池需要进行预充,充电器最好带有热保护和
时间保护,为电池提供附加保护。
一部分的充电器不但能在很短时间内将电量充足,而且还可以对电池起到一定的维护
作用,修复由于使用不当造成的记忆效应,即容量下降(电池活性衰退)现象。设计比较
科学的充电器往往采用专用充电控制芯片配合单片机控制的方式。专用的充电芯片具有业
界公认较好的-△v检测,可以检测出电池充电饱和时发出的电压变化信号,比较精确地结
束充电工作,通过单片机对这些芯片的控制,可以实现充电过程的智能化,例如,在充电
后增加及时关段电源、蜂鸣报警和液晶显示等功能。充电器的智能化可以缩短充电的时间,
同时能够维护电池,延长电池使用寿命。
51系列单片机也是当前使用最为广泛的8位单片机系列,其丰富的开发资源和较低的
开发成本,使51系列单片机现在以至将来都仍会有强大的生命力。在众多的51系列单片
机中,AT89系列单片机在我国得到了极其广泛的应用,AT89系列单片机是美国Atmel公
司的8位机产品。他的特点是片内含有FlashMemory,FlashMemory是一种电可删除和
电写入的闪速存储器(记为FPEPROM),在系列的开发过程中可以很容易地进行程序修改,
使开发调试更为方便。
随着社会的不断发展,人们使用各种家电设备、仪表以及工业生产中的数据采集与控
制设备也在逐步走向智能化,所以充电器有它的巨大发展空间,同时电子产品的不断更新,
51单片机在实现手机电池充电器方面的应用就更有意义。
第7页
2.2系统复位电路的设计
影响单片机系统运行稳定性的因素可大体分为外因和内因两部分:
外因
射频干扰,它是以空间电磁场的形式传递在机器内部的导体(引线或零件引脚)感生
出相应的干扰,可通过电磁屏蔽和合理的布线/器件布局衰减该类干扰;电源线或电源内
部产生的干扰,它是通过电源线或电源内的部件耦合或直接传导,可通过电源滤波、隔离
等措施来衰减该类干扰。
内因
振荡源的稳定性,主要由起振时间频率稳定度和占空比稳定度决定,起振时间可由电
路参数整定稳定度受振荡器类型温度和电压等参数影响复位电路的可靠性。
2.2.1复位电路的可靠性设计
1、基本复位电路
复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复
位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电
源插头分-合过程中引起的抖动而影响复位。
单片机复位电路设计的好坏,直接影响到整个系统工作的可靠性。许多用户在设计完
单片机系统,并在实验室用仿真器调试时却无此现象发生或极少发生此现象在现场却出现
了“死机”、“程序走飞”等现象,这主要是单片机的复位电路设计不可靠引起的。不同
单片机对复位的时间有不同的要求,具体看相应单片机公司提供的资料。51单片机要求复
位持续时间在24个振荡周期以上。
基本复位电路的设计:
RC复位电路
RC复位电路的改进增加了放电二极管后在电源电压瞬间下降时使电容迅速放电,较小
宽度的电源变化也可令系统可靠复位,两种复位电路输入输出特性图常常将R、CF的值增
大以提高时间常数,并且应用具有斯密特输入的CMOS反相器以提高抗干扰性
带电压监控功能的复位电路
当VCCx(R1/(R1+R2))<0.7V时,Q1截止,产生复位信号
稳定门槛电压复位电路
具体特点:使用稳压二极管可使Vt基本不受VCC影响,当VCC低于Vt=Vz+0.7V时,
电路令系统复位;驱动能力强,受负载影响小。
改进型稳定门槛电压复位电路
增加延时电容和放电二极管构成性能优良的复位电路,调节C1可调整延时时间,调
节R1可调整负载特性。带电压监控功能的复位电路输入—输出特性:
在本设计中,复位电路起保护作用,当整个系统错误或出现“死机”等突发状况时,
按下复位按钮,对系统进行复位保护。具体电路图如图2-1:
第8页
图2-1系统复位电路
2.3系统时钟电路的设计
时钟电路用于产生MCS-51单片机工作时所必须的时钟控制信号,MCS-51单片机的内
部电路在时钟信号的控制下,严格的执行指令进行工作,在执行指令时,CPU首先要到程
序存储器中取出所需要的指令操作码,然后译码,并由时序电路产生一系列控制信号去完
成指令所规定的操作。CPU发出的时序信号有两类,一类用于片内对各个功能部件的控制,
另一类用于对片外存储器或I/O端口的控制。MCS-51单片机各功能部件的运行都是以
时钟信号为基准,有条不紊地一拍一拍地工作,因此时钟频率直接影响单片的速度,时钟
电路的质量也直接影响单片机系统的稳定性。常用的时钟设计电路有两种方式,一种是内
部时钟方式,一种是外部时钟方式。
外部时钟方式
外部时钟方式是使用外部振荡器产生的脉冲信号,常用于多片单片机同时工作,以便
于多片单片机之间的同步,一般为低于12MHz的方波,常见的89S51单片机的外部时钟
方式接法如下:外部的时钟源直接连接到XTAL1端,XTAL2端悬空NCXTAL2外部振荡信
号输入XTAL1GND
内部时钟方式
MCS-51单片机内部由一个用于构成振荡器的高增益反相放大器,该高增益反相放大器
的输入端为51单片机的引脚XTAL1,输出为XTAL2。这两个引脚跨接石英晶体振荡器和微
调电容,就构成了一个稳定的自激振荡器。具体电路图如下图2-2:
第9页
图2-2系统时钟电路图
2.4系统电源模块的设计
2.4.17805简介
在电子产品中,常见的三端稳压集成电路有正电压输出的78××系列和负电压输出的
79××系列。顾名思义,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别
是输入端、接地端和输出端。它的样子像是普通的三极管,TO-220的标准封装,也有9013
样子的TO-92封装。
用78/79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、
过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。该系列集成稳压IC型
号中的78或79后面的数字代表该三端集成稳压电路的输出电压,如7806表示输出电压
为正6V,7909表示输出电压为负9V。因为三端固定集成稳压电路的使用方便,电子制作
中经常采用。
2.4.27805使用注意事项
在实际应用中,应在三端集成稳压电路上安装足够大的散热器(当然小功率的条件下
不用)。当稳压管温度过高时,稳压性能将变差,甚至损坏。
当制作中需要一个能输出1.5A以上电流的稳压电源,通常采用几块三端稳压电路并
联起来,使其最大输出电流为N个1.5A,但应用时需注意:并联使用的集成稳压电路应采
用同一厂家、同一批型号的产品,以保证参数的一致。另外在输出电流上留有一定的余量,
以避免个别集成稳压电路失效时导致其他电路的连锁烧毁。在78**、79**系列三端
稳压器中最常应用的是TO-220和TO-202两种封装。
此外,还应注意,散热片总是和接地脚相连。这样在78xx系列中,散热片和②脚连接,
而在79xx系列中,散热片却和①脚连接。
在此次设计中具体工作过程是从变压器输出来的220v交流电转换成12v交流电,接着
电流经过整流后,继续把电流输送给滤波,最后经过滤波后将电流输送给7805,具体电路
如下图2-3:
第10页
图2-3系统电源模块电路图
2.5充电管理芯片的选择
充电芯片MAX1898内部电路包括输入电流调节器、电压检测器、充电电流检测器、定
时器、温度检测器和主控制器。输入电流调节器用于限制电源的总输入电流,包括系统负
载电流与充电电流。当检测到输入电流大于设定的门限电流是,通过降低充电电流从而控
制输入电流。因为系统工作是电流变化范围较大,所有需要对电流进行智能检测。
MAX1898外接限流型充电电源和P沟道场效应管或PNP三极管,可以对锂电池进行安
全有效的快充,器最大的特点是在不使用电感的情况下仍能保持很低的功率耗散,可以实
现预充电,具有过压保护和温度保护功能以及为锂电池提供二次保护。
2.5.1芯片MAX1898的特点
MAXl898配合外部PNP或PMOS晶体管可以组成完整的单节锂电池充电器。
MAXl898提供精确的恒流/恒压充电,电池电压调节精度为±0.75%,提高了电池性
能并延长了电池使用寿命。充电电流可由用户设定,采用内部检流,无须外部检流电阻。
MAXl898提供了充电状态的输出指示、输入电源是否与充电器连接的输出指示和充电电
流指示。MAXl898还具有其他一些功能,包括输入关断控制、可选的充电周期重启(无须
重新上电)、可选的充电终止安全定时器和过放电电池的低电流预充。
MAXl898的关键特性如下:
简单、安全的线性充电方式。
使用低成本的PNP或PMOS调整元件。
输入电压:4.5~12V。
内置检流电阻。
±0.75%电压精度。
可编程充电电流。
输入电源自动检测。
LED充电状态指示。
可编程安全定时器。
检流监视输出。
可选/可调节自动重启。
第11页
小尺寸uMAX封装。
2.5.2芯片MAX1898的原理
充电芯片MAXl898的内部电路包括输入电流调节器、电压检测器、充电电流检测器、
定时器、温度检测器和主控制器。输入电流调节器用于限制电源的总输入电流,包括系统
负载电流与充电电流。当检测到输入电流大于设定的门限电流时,通过降低充电电流从而
控制输入电流。因为系统工作时电源电流的变化范围较大,如果充电器没有输入电流检测
功能,则输入电源必须能够提供最大负载电流与最大充电电流之和,这将使电源的成本增
高、体积增大,而利用输入限流功能则能够降低充电器对直流电源的要求,同时也简化了
输入电源的设计。MAXl898外接限流型充电电源和P沟道场效应管,可以对单节锂电池进
行安全有效的快充,其最大特点是:在不使用电感的情况下,仍能做到很低的功率耗散,
可以实现预充电,具有过压保护和温度保护功能,最长充电时间的限制可为锂电池提供二
次保护。MAX1898的浮动方式能够使电池容量充至最大。
当充电电源和电池在正常的工作温度范围内时,插入电池将启动一次充电过程;充电
结束的条件是平均的脉冲充电电流达到快充电流的1%,或时间超出片上预置的充电时间。
MAXl898能够自动检测充电电源,没有电源时自动关断以减少电池的漏电。启动快充后打
开外接的P型场效应管,当检测到电池电压达到设定的门限时进入脉冲充电方式,P型场
效应管打开的时间会越来越短。
当充电电源和电池在正常的工作温度范围内时,插入电池将启动一次充电过程。平均
的脉冲充电电流低于设置的快充电流的20%,或者充电时间超出片上预置的最大充电时问
时,充电周期结束。MAXl898能够自动检测充电电源,没有电源时自动关断以减少电池的
漏电。启动快充后,打开外接的P型场效应管,当检测到电池电压达到设定的门限时进入
脉冲充电方式,P型场效应管打开的时间会越来越短。充电结束时,LED指示灯将会呈现
周期性的闪烁,具体的闪烁含义如表1所示。
表2-1MAX1898典型充电电路的LED指示灯状态说明
充电状态LED指示灯
电池或充电器没有安装灭
预充或快充亮
充电结束灭
充电出错以1.5Hz频率闪烁
MAX1898具体电路图如下图:
图2-4MAX1989电路图
第12页
2.6MAX1898电源模块的设计
光电耦合器是以光为媒介传输电信号的一种电—光—电转换器件。它由发光源和受光
器两部分组成。把发光源和受光器组装在同一密闭的壳体内,彼此间用透明绝缘体隔离。
发光源的引脚为输入端,受光器的引脚为输出端,常见的发光源为发光二极管,受光器为
光敏二极管、光敏三极管等等。光电耦合器的种类较多,常见有光电二极管型、光电三极
管型、光敏电阻型、光控晶闸管型、光电达林顿型、集成电路型等。
光电耦合器之所以在传输信号的同时能有效地抑制尖脉冲和各种杂讯的干扰,使通道
上的信号、杂讯比大为提高,主要有以下几方面的原因:
(1)光电耦合器的输入阻抗很小,只有几百欧姆,而干扰源的阻抗较大,通常为105~
106Ω。据分压原理可知,即使干扰电压的幅度较大,但馈送到光电耦合器输入端的杂讯
电压会很小,只能形成很微弱的电流,由于没有足够的能量而不能使二极体发光,从而被
抑制掉了。
(2)光电耦合器的输入回路与输出回路之间没有电气联系,也没有共地,之间的分布
电容极小,而绝缘电阻又很大,因此回路一边的各种干扰杂讯都很难通过光电耦合器馈送
到另一边去,避免了共阻抗耦合的干扰信号的产生。
(3)光电耦合器可起到很好的安全保障作用,即使当外部设备出现故障,甚至输入信
号线短接时,也不会损坏仪表。因为光耦合器件的输入回路和输出回路之间可以承受几千
伏的高压。
(4)光电耦合器的回应速度极快,其回应延迟时间只有10us左右,适于对回应速度
要求很高的场合。
在本次设计中,光电耦合器的作用是特殊保护电路,是整个电路更加稳定如图2-5,
电源中的电流通过2通道以及AT89S51的电流通过3通道进入光电耦合器内部,内部的光
敏原件通过控制,最后将电流传给芯片MAX1898,从而对电路进行了特殊的保护。
图2-5光电耦合器电路图
第13页
第三章系统的软件设计
3.1主程序的设计
程序初始化之前,必须把所有状态归零,禁止MAX1898充电,电源不接入,发光二极
管熄灭。目的是保持定时与充电同步。之后,调用初始化程序,对AT89S51进行初始化。
然后,接入充电电源,使能MAX1898,定时器启动开始定时。等待安全充电时间结束,安
全时间结束后,发出充电完成信号,如果有错误,发出错误信号。主程序图如图3-1:
图3-1主程序流程图
主程序编写如下:
Time_out==1?
Error==0?
D3灭
D3闪烁
关闭T0、INT0中断
切断Max1898电源
初始化
D3亮
开始
Y
N
Y
N
第14页
voidmain()
{EN_OK=0;//禁止MAX1898充电
BP=1;//D3灯关闭
GATE=0;//输入电压不接入,MAX1898不工作
C51_init();//初始化程序
GATE=1;//接入输入电压5V
EN_OK=1;//MAX1898使能
TR0=1;//定时开始
while(!time_out);//等待安全充电时间到
do{
if(error==0)
{BP=0;//充电完成D3灯一直亮
GATE=0;
EA=0;
}
el
{BP=~BP;//充电出故障D3灯闪烁
GATE=0;
EA=0;
}
}while(1);
}
3.2定时器中断服务程序的设计
程序中需要定时用于控制安全充电时间结束时断开接入电源并发出充电完成信号,由
于安全充电时间太长了,所以仅靠定时是不够的,因此需要多次循环。我们先定时50ms,
20个循环就是1s,再加一层循环,60个就是1min,安全充电时间用分钟计算就方便多了。
AT89S51用12MHZ晶振,一个机器周期就为1us,
第15页
50ms就是50000个机器周期。本程序用T0定时/计数器,方式1—16位定时/计数器,最
大计数值为
82
=65536。现在我们要计数50000,则定时/计数寄存器的初值为
65536-50000=15536,转化为十六进制位3CB0H,则TH0=3CH,TL0=B0H。
另外,还用外部中断设置,我们采用下降沿触发。定时器中断服务程序如图3-2:
图3-2定时器中断服务程序流程图
T0中断
关闭T0定时
重设定时器初值
Time++
Time==20?
Error=1
Error=0
Time_out=1
Second=0,Minute++
Time=0,Second++
Second==60?
Minute==190?
Int0_count==1?
RETI
N
N
N
Y
Y
Y
Y
N
第16页
具体程序如下:
voidtime0(void)interrupt1using1
{TL0=0xB0;
TH0=0x3C;//重置初值
time++;//定时中断次数累计
if(time==20)
{time=0;//1s到中断次数清零
cond++;//秒累计
}
elgotoend;
if(cond==60)
{cond=0;//1min到秒清零
minute++;//分累计
}
elgotoend;
if(minute==190)
{minute=0;//安全充电时间到,分清零
time_out=1;//标志位置一
}
elgotoend;
if(int0_count==1)
{error=0;}
elerror=1;
end:;
}
3.3外部中断服务程序
外部中断0服务子程序主要用来累计外部中断的次数。定时中断0服务子程序首先
第17页
要给定时器重新赋初值,中断20次就是1s,中断1200次就是1min。我们的锂离子电池
采用0.3C充电,充电时间5h,360000次中断就充电完毕。充电的过程中必须有一次外部
中断,这次中断是快速充电结束充电电流下降到20%,如果充电完成没有这次中断,D4将
以4HZ频率闪烁。闪烁的频率控制也是通过定时中断0,通过判断标志位error来区分控
制安全充电时间所用的定时中断。具体流程图如图3-3:
图3-3外部中断服务程序流程图
具体编写程序如下:
voidcharging(void)interrupt0using0
{int0_count++;}//外部中断次数累计
INT0中断
RETI
Int0_count++
第18页
第四章结论
本次设计以充电芯片MAXl898的使用为主体,利用单片机实现智能化的手机充电器。
目前,充电电池的种类繁多,因此在充电器的方案创建时需要针对不同的电池选择不同的
充电芯片。此设计实现的是单节锂离子电池充电器,因此选用了芯片MAXl898作为充电芯
片。设计在选择芯片后进行硬件和软件的设计。
在本次设计过程中,需着重把握的是:预充、快充、满充等充电方式的工作原理;
MAXl898的充电状态指示输出信号CH6在本设计中的应用;MAXl898在外围电路的设计中,
其中包括设置充电电流的电阻和充电时间的电容数值的选取以及如何在单片机程序中判
断出充电完成还是充电出错,并做出相应的处理。采用C51语言设计单片机应用系统程序
时,首先是要尽可能地采用结构化的程序设计方法,这样就使整个应用系统程序结构清晰,
易于调试和维护。
第19页
附录1:
第20页
第21页
附录2:
voidmain()
{EN_OK=0;//禁止MAX1898充电
BP=1;//D3灯关闭
GATE=0;//输入电压不接入,MAX1898不工作
C51_init();//初始化程序
GATE=1;//接入输入电压5V
EN_OK=1;//MAX1898使能
TR0=1;//定时开始
while(!time_out);//等待安全充电时间到
do{
if(error==0)
{BP=0;//充电完成D3灯一直亮
GATE=0;
EA=0;
}
el
{BP=~BP;//充电出故障D3灯闪烁
GATE=0;
EA=0;
}
}while(1);
}
voidcharging(void)interrupt0using0
{int0_count++;}//外部中断次数累计
第22页
voidtime0(void)interrupt1using1
{TL0=0xB0;
TH0=0x3C;//重置初值
time++;//定时中断次数累计
if(time==20)
{time=0;//1s到中断次数清零
cond++;//秒累计
}
elgotoend;
if(cond==60)
{cond=0;//1min到秒清零
minute++;//分累计
}
elgotoend;
if(minute==190)
{minute=0;//安全充电时间到,分清零
time_out=1;//标志位置一
}
elgotoend;
if(int0_count==1)
{error=0;}
elerror=1;
end:;
}
本文发布于:2023-03-15 23:40:10,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/1678894811269068.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:智能充电器.doc
本文 PDF 下载地址:智能充电器.pdf
留言与评论(共有 0 条评论) |