蓝蓝小星星 发表于 2024-8-16 17:04 VIN是作为USB插入检测的,有的系统,比如手电,单片机是要休眠的,VIN作为唤醒的 CHRG和STDBY是没法正确指示的,单片机没法知道USB线有没有拔出的 |
量下CHRG的电平,看充电和不充电时单片机能否得到高低电平,如果能就可以直接用,我之前用蓝牙芯片接TP4056就是这么用的。 |
Y_G_G 发表于 2024-1-8 22:41 芯片的两个引脚就完全可以,非要用VIN引脚。 |
把一个限流电阻改为2个直接检测低电平即可,除非高阻态时不是高电平则另加比较器处理. |
产品级设计的话,充电芯片一般不能直接对接MCU的IO。因为 IO 有可能影响充电芯片工作,导致未知后果。 标准的方案是, 大多数好一点的充电芯片,设计时可以将指示灯的脚,作为IIC总线脚,从而使用 IIC 协议来监测 电压电流等数据,也能知道是充电还是放电。 |
Y_G_G 发表于 2024-1-8 22:41 为什么是VIN是中断口。 |
joyb 发表于 2024-1-9 14:44 我也想知道这个。在设计中,老大说要检测 |
充电算法是什么 |
单片机检测是否在充电,有什么意义 |
Y_G_G 发表于 2024-1-8 22:41 感谢提供的原理图!我知道怎么做了!谢谢! |
paladina 发表于 2024-1-8 14:37 感谢建议! |
给你一个参考吧 原理就是在VIN为高电平的时候,通过读取CH的电平来检测电池是否是充电完成状态 不要听上面的,ADC检测电池电压是行不通的,锂电池充满电是4.10V左右,虽然刚刚充满的时候会有4.20V,但很快就会下降到4.10V的 但充电的时候,有时会达到4.25V的 如果是单单检测电池电压有没有达到4.20V,很容易误判定的 这个电路是带充电插入检测的,VIN最好是中断端口 CH需要单片机上拉,如果单片机没有内置上拉电阻,你就得外部增加一个上拉电阻 ![]() |
CHRG和STDBY两个脚芯片内部是开漏输出,按照上图这电阻端连led端电压在2v左右,经过led导通电压你在这两个引脚测得电压永远是低电平(最多0.几v),建议再加两个10k电阻连到这两个端口,这样才能测得高低明显不同的电平(需要注意5v 3.3v电平匹配问题)。既然用了单片机,还是测电池端电压就行了,还可以大概显示充电完成比例。 |