电阻分压后接电容器到GND,送入ADC既可. Vout=Vin x R2/R1+R2 计算分压电阻 R1(To Vin),R2(To GND) |
我最近也是在研究这个问题,兄弟有突破了吗, |
幅度部分: 1、定时采样波形的数据。 2、计算一套理论数据模型 3、将采样数据与理论数据对位同步(如边沿对齐) 4、将两者进行比较,当误<D时,判定为OK。D是你给出的允许误差值。 时序部分:如法炮制。 |
按照检测过零信号的思路就行 |
guoqiang881245 发表于 2022-7-24 09:19 你看一下2灯模式是的LED显示状态,你要接的充电检测是LED1端口,不是LED3,如果是选择这个模式,那就是检测LED是方波还是高电平,这就是很简单的程序,就是一个和时间相关的变量,定时器负责累加,检测到低电平就归零,3秒或者是10秒钟或者是20秒没有低电平就认为是充满电了,对于充电完成,不在乎那几秒钟的 ![]() |
Y_G_G 发表于 2022-7-24 09:10 一灯模式确实不能检测输入输出,我用的是2灯模式,2灯模式一个是输出,一个是输入。充电是直接检测5VUSB输入的,插入单片机检测,输出是充电IC2灯模式的来指示的,不过电压是电池电压,他是一个矩形波,就是上面示波器的波形,当充电IC升压的5V输出有负载,这个波形就会起来。去掉负载这个波形30秒左右变成低电平。 |
guoqiang881245 发表于 2022-7-23 22:49 你现在的硬件电路是不能区分充电和充电完成状态的 你先看一下这个充电芯片的数据手册LED3端口实际上是一个公共端口,它是通过扫描的方式控制4个LED显示电量的 它是没有办法检测充电状态的 只有LED1端口可以检测充电状态的 但充电状态和放电状态是一样的,都是只有两种状态:一种是闪灯,一种是长亮 所以,你肯定要加一个USB检测的,要两个电阻分压检测,看你自己的需要,可以是中断,也可以是ADC,看一下接电池不接充电的时候,1脚的充电端口有没有电压,如果有电压,就用ADC检测5V充电电源 如果没有,可以用中断检测 ![]() ![]() |
Hephaestus 发表于 2022-7-23 18:54 谢谢帮助,采样代码能发一下吗? |
Y_G_G 发表于 2022-7-23 19:10 大佬 我重新上传了图片,麻烦帮忙看看 ,现在输出矩形波是接了电池的,单片机这边不知道如何检测这个矩形波。 |
有的充电IC是有锂电池检测功能的 如果充电IC上电了,但没有接电池的话,它会有信号提示的但有的小公司的充电IC数据手册中是没有这个说明 关于充电电路和程序什么的,你都问了几天了,也不见一个硬件电路,也没有充电芯片型号,也没有说明单片机型号 什么都不说,神仙都搞不定 ![]() |
先衰减到安全电压,模拟输入不能低于VEE不能超过VCC否则一定会烧单片机。然后做6ksps采样,3次有3次没有就算。 |