|
本人经过两天的奋斗,终于制作成功了一款采用AT89C2051的智能充电器,工作电压5V。而且无需A/D芯片,具备LED显示电量,充满自停等功能。市面上的充电器充电电压都不准确,很容易充坏电池,本充电器能把电池准确充到4.2V并且立即停止充电!具体操作及原理:
接通电源,CPU通过P3.3脚输出2Hz方波检测信号,用来检测电池,这个时候双色LED显示绿色,表示没有放入电池,当接入电池时,在方波期间,R4将产生压降。此压降加到IC1B,IC1是一块运算比较器,ICB对R4的压降时刻进行比较,平时输出为低电平,如果放入电池,R4两端的电压将大于反相,这个时候比较器翻转为高电平,通过调节VR2来控制翻转电压。当放入电池后,CPU的P3.5脚将变为高电平,这个时候CPU认为检测到电池,于是置P3.3为持续的低电平,Q1导通,开始充电,并且双色LED变为红色表示正在充电。这个时候由IC1A组成的简单的压控振荡器开始震荡,震荡频率由电池的电压决定,电池电压高,频率就高。振荡器时刻监视着电池电压,把频率反应给CPU,CPU里面的计数器不断对频率进行采样,与内部程序设置的门限进行比较,通过P1口的4个LED显示相应的电量,相应的LED会闪烁,比如充到50%,那么50%的LED会闪烁,其余50%以下的会变常亮!调节VR1可以控制检测的准确性。注意:此部分电路任意一个元件的数值改变,将直接影响电量的检测的准确性。当电池充满后,4个LED全亮,双色LED变为绿色并且闪烁表示充满,CPU的P3.3脚变为高电平,Q1截止停止充电。
程序及其电路如下:
第二版的:http://www.51hei.com/bbs/dpj-19489-1.html 我的qq:223049697
|
|