
支持热插拔及IIC检测电池电量的电源模块
简介
1、聚合物锂电池供电,具备充放电功能 2、可输出5V和3.3V,电流2.1A 3、带电源路径管理,输入端插入或拔出不断电 4、可通过IIC总线读取电池电压
简介:1、聚合物锂电池供电,具备充放电功能 2、可输出5V和3.3V,电流2.1A 3、带电源路径管理,输入端插入或拔出不断电 4、可通过IIC总线读取电池电压开源协议
:GPL 3.0
描述
由于本人经常使用锂电池为项目供电,在使用中发现诸如IP5306这种电池充放电管理芯片虽然集成度很高,但插拔充电端口不能马上切换到电池供电,会出现断电情况,因此设计了此款带电源路径管理的电源模块,可插拔充电线不会影响电源模块的输出,可做到直流供电和电池供电的无缝切换,同时为方便使用,设计了插针输入和输出,建议在底层焊接排母,在项目PCB上设计对应的排针(间距47.2mm,前6针后8针,底部对齐),即可将该模块直接插在项目的PCB板子上,同时引出了充电指示灯(2.54插针,方便焊线引出到项目外壳)和开关接口(PH2.0,貌似XH2.54更通用一些,我是由于手头正好有之前项目PH2.0接口的开关,就画成PH2.0的了),使用方便。
使用ETA7014作为过压保护,本项目设置保护值为5.5V,通过更改R2和R5的值可以修改保护电压,公式是1.26*(R2+R5)/R2
使用ETA6002作为电源路径管理,可做到直流输入突然断电瞬间可切换电池供电,模块输出不会断电,LED作为充电指示灯,充电亮,充满灭,若取下电池,该模块也能正常输出,但LED指示灯会闪亮提示电池问题,为方便使用,LED灯也做了插针引出设计。最大充电电流可通过更改R8进行设置,公式是1000/R8,本项目设置最大充电电流为2A,为保护电池,电池容量的数值至少是最大充电电流的两倍,因此该模块使用电池应大于4000mAh,若要使用小电池,请更换R8,在板子正面也清晰标明了R8的位置。
使用TPS61230作为输出芯片,电池供电可输出5V2.1A,输入范围2.1V-5.5V,修改R10和R11可改变芯片输出电压,公式是1+R11/R10,连接5V直流供电时输出最大4A,电池电压为3.3V时输出最大输出电流为2.1A。这个芯片手动焊接有点难度,我是在焊盘摸了锡浆以后用加热台焊上去的,用热风枪也可以,不推荐电烙铁焊接。
使用INA219检测电量,电池电量信息通过IIC接口输出,此模块没有设置IIC的上拉电阻,若使用MCU读取电量时需要在MCU的PCB上设置IIC上拉电阻。读取程序见附件,给出了C语言和MicroPython的程序版本,给出的均是驱动程序文件,在主函数里进行相关调用即可,可读取到电池的电压值。C语言的是在STM32上运行的,用软件模拟的IIC时序,又封装的INA219读写程序。MicroPython版本则直接调用的machine库中的IIC接口,封装了INA219读写的库。
实际项目复刻成本在于那几颗芯片,立创商城价格:ETA6002E8A——2.71元,ETA7014S2G——4.45元,INA219AIDCNR——4.54元,TPS61230——8.12元,其它电阻电容连接器什么的都很便宜,主要是有最低购买量提高了成本。
设计图

BOM


评论