【本帖DIY因为有一定的危险性,非专业人员请勿自行尝试】 【如有侵权 联系删除】
IP5328P是一款最大18W的快充芯片,主要用于快充充电宝的产品,基本支持市面上绝大部分主流的快充协议。
因为能看到本帖的想必都是对这个芯片很了解了,所以就不过多赘述了,接下详细介绍此贴的由来、过程及结果。[后面我会附加此芯片的中文手册,不了解的可以看手册]
★缘起:
在某宝捡电子垃圾时偶然发现一款快充充电板的尾料在低价售卖,虽是18年的产品,但是相比同参数新品快充板的几十块钱来说,这个板子的3.8元那可简直是太香了。又因本人有几个普通充电宝,充电速度相对于快充充电器实在是缓慢至极,故平时极少使用,如果拿来改装为快充充电宝岂不快哉!
★过程及改装方法:
对于DIY,如果是仅仅将电路板连接到电池上,那就太拉跨了。电路板自带4个led灯做为电量显示,显然对这一设计我并不满足,于是乎有了改为数显的想法。在看数据手册的过程中发现IP5328P自带IIC功能,可以读取其内部的各种参数,官方经典的电路(led灯显示模式)如下。在改为IIC时有两种接法,我选择的是IIC模式1,在原来的电路上,将R2和R7去掉,将LED1引脚和LED2引脚分别通过3.3K电阻用芯片的VREG进行上拉。VREG是IP5328P芯片自带的一个3.3V 30ma的LDO输出,在使用IIC模式时,为了保证稳定请尽量使用VREG作为上拉电源,因为在芯片激活时,会首先检测LED1和LED2的电平,如果为高则进入IIC模式。需要注意的是,手册上写着LED3引脚可以接单片机作为唤醒引脚或用来指示是否正在工作,但是此引脚又是设置电池电压的引脚,接入不同的电阻下拉会设置不同的电池电压,实测中如果直接接单片机引脚,会导致电压设置改变,在对4.2V电池进行充电时终止电压并不是4.2V,而是大大高于4.2V,这样是非常危险的,很容易过冲发生爆炸!如果没有万分把握、经过实际测试或其他方式连接,请勿使用此引脚!
重要的事情说3遍:
这样是非常危险的,很容易过冲发生爆炸!
这样是非常危险的,很容易过冲发生爆炸!
这样是非常危险的,很容易过冲发生爆炸!
作为IIC模式使用时,LED1引脚即为IIC的时钟引脚SLK,LED2引脚即为IIC的数据引脚SDA,芯片的IIC读写时序在数据手册可以找的到,很容易看懂,我就不赘述了,直接上代码吧。使用的单片机是大家常用的stm32f103c8t6,SDA连接到PB8,SLK连接到PB9。主要的几个文件如下。
○i2c.c[iic的时序驱动文件]
○i2c.h
○ip5328p.c[IP5328P芯片的读写实现和常用参数获取]
○ip5328p.h
使用时可以这样,如:
★结果:
外壳是花4块钱买的,电池用了5节2600mAh的18650,壳子上的孔是用打磨文玩那种手持小电磨钻的,屏幕是135*240的IPS彩屏,加了个开关机电路[真开关机,直接断电那种],用一个按键控制,按下按键开机等待10S自动断电。实际测试中,TYPE-C给充电宝充电能达到稳定的16W,OUT1输出给手机能到18W,虽然数据是通过芯片寄存器读出的,准确性未知,但是最起码基本满足了数据手册的标称值。不过在给手机充电时,确实也是很快的,与我手机的快充充电器并无二致[本人手机也是18W快充的,所以此快充板完全满足我的使用需求]。
具体的程序和资料我放到了gitee上,保证所有人都可以免费下载:https://gitee.com/chaojiwangba/IP5328P