智能手机电池充电器电路.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
智能手机电池充电器电路

智能手机电池充电器由CPU、LED指示灯、蜂鸣器、MAX1898充电芯片和电源电路等几部分组成。原理框图如下图所示 供电电源电路      系统采用220V交流电对系统直接供电,先使用交流变压器将220V交流电转换成12V的交流电,通过桥式整流电路进行整流后,接1只1000μF/25V的电解电容和一个104的陶瓷电容,再将经过滤波后的输出直接接到7805集成稳压电路,为系统提供电源。电路原理图如下图所示。 (2) 51单片机      单片机选用常用的8051,采用6MHz晶振。电路外接引脚,电路设计如下图所示。   引脚 功能说明 IN 芯片内部取样电阻的输入端,检测输入电源 CHG 开漏极LED驱动引脚或接l00kΩ电阻 EN/OK 芯片的使能输入和电源就绪输出引脚 ISET 外接限流电阻设置芯片最大充电电流 CT 外接定时电容设置芯片充电时间 RSrIRT 重新充电控制端 BATT 锂电池的正极 GND 芯片地 DRV 外接晶体管的驱动引脚 CS 芯片内部取样电阻负端 充电时间和定时电容C(nF)的关系式满足:C(nF)=34.33×t(充电时间,单位为h)。最大充电电流Imax和限流电阻rset的关系式满足:Imax(A)=1400(V)/rset(Ω)。 系统充电控制电路原理图如下图所示。 智能手机电池充电器程序的主要功能有检测是否有电池插入,预充电时间是否成功,电池是否充满等,程序流程图如下图所示。      在本系统中使用MAX1898和89c51,直接控制电池的充电过程。当没有电源和电池输入时MAX1898的CHG引脚为高电平,将CHG引脚连接到外部中断INT0,监测CHG的输出信号。当充电开始时,单片机的INT0引脚接收到中断信息,产生中断并使能单片机的Tl计数器进行计数,如果预充出错则将MAX1898的EN/OK引脚置低停止充电,并驱动蜂鸣器报警。程序代码如下: ? ?   本设计采用MAX1898作为系统的充电控制器件,AT89C51根据检测到的MAX1898的输出信息,完成对充电过程的控制和报警。#include reg51.h Unsigned int T3HOUS = 3600; Unsigned int T1NUM = 0; Unsigned int INTONUM = 0; Sbit SPEAK = P0^1; Sbit EN/OK = P0^2; Void main (void) { system_init(); /*调用系统初始化函数*/ EA = 1;EXO = 1; /*使能INTO中断*/ While(1) { EN/OK = 1;} /*使能MAX1898*/ } Void int0_interrupt (vvoid) { If(INTONUM = = 0) {TR1 = 1;SPEAK = 0;}/*使能定时器1*/ INTONUM + + ; } void t1_interrupt (void) { T1NUM + +;T3HOUS - -; If ((T3HOUS! = 0) (INTNUM = =1)) { If(T1NUM = =6 000) /*3s*/ { T1NUM = 0;SPEAK = 0; } } Else { EN/OK = 0; /*禁止MAX1898*/ T3HOUS = 0;SPEAK = 1; } void system_init(void) { SPEAK = 1; /*禁止蜂鸣器*/ EN/OK = 0; /*禁止MAX1898*/ TMOD = 0X20; /*设置定时器1*/ TCON I =0X01; TH1 = 0;TL1 = 0;

文档评论(0)

feixiang2017 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档