手机充电IC设置电流与实测电流不一致问题剖析

大家好,我是写代码的篮球球痴,转一篇我朋友记得诚的文章

本文转载来自一位基带大佬,解决问题的思路很重要。

原文链接:

https://blog.csdn.net/AirCity123/article/details/104428325?spm=1001.2014.3001.5502

某手机的充电架构如下,主Charger用的是高通MSM8953平台套片的PMI8952,辅Charger用的是TI的BQ25898C。

d900ee13261a8074d9db4fe7b79d52ff.png

两个Charger可以单独工作,也可以同时工作,分开放置的目的是更好的散热。

当BQ25898单独工作时,软件设置电流超过1.5A时,实测进入电池的电流总是比设置的值少。结果如下:

cdc768358e6b01bbaafe5b5ff79d9773.png

经交叉验证,此IC换到TI的EVB上,电流误差都在要求以内,IC本身没问题。

排查寄存器配置,软件反馈也没有问题。

此后把注意力放在PCB Layout上。下面是BQ25898C的内部架构图,Q4的存在证明了这个充电IC是一个带电源路径管理的IC。

661d4d3d5b431ba4bebc7169ddf7c9f3.png

把Q4部分放大,能看到这个IC是通过检测经过Q4的电流来判断设置电流是否正确的,那么如何得知Q4的电流呢?

81fe7518d799466eb9f006546ccb576c.png

BQ25898C的Q4其实是由5个并联的MOS组成,每个MOS是一个充电通道,当设置充电电流为1.5A以下时,通道的阻抗为28mohm,当设置为1.5A以上时,通道阻抗为8mohm;芯片内部只检测这5个通道中最中间的那个通道的电流,是否正常。

71cbdbf5ea549143e0218e295441fda3.png

当时手机项目的走线情况如下:

489385e65469cbc62dac31b1ec669d94.png

可以看到这5个通道分别占用了5对Pad,这个走线并不好,因为考虑到走线的阻抗,最上面的MOS的电流通路阻抗最小,最下面的MOS电流通路阻抗最大。我们对走线阻抗做如下假设:

6aeb91ec138bebfbb84a257561dc79ae.png

图中计算的并联阻抗是从第一通道看进去,计算出的阻抗。

BQ25898是根据通道3两端的电压来判断,实际电流值与设置电流值是否一致。比如寄存器设置充电电流是1.5A,那么只要检测到通道3的电流是0.3A,芯片就认为正常。

当通道3电流是0.3A时,另外几个通道的电流计算如下:

从通道3的两个pad看出去,通道2和4的阻抗是一样的,通道1和5的阻抗是一样的。

通道2和4的电流=0.3Ax8/10=0.24A;

通道1和5的电流=0.3x8/12=0.2A;

所有通道电流之和=0.3A+0.24x2+0.2Ax2=1.18A。

很显然,实际电流不等于设置电流。

所以说,这个问题的根本原因是PCB Layout导致,BQ25898C的VSYS和VBAT的走线不好,没有让5个通道的MOS的电流路径对称。

解决方案如下:

1、Vbat和Vsys的PIN铺一大块铜皮,并且加厚,减小阻抗。

3319eee79a6e690809585d29a0ba7fba.png

2、保证每个通道的阻抗是对称的。

a014ee1a84f389c18a0cc561e815edea.png

今天的文章内容到这里就结束了,希望对你有帮助,我们下一期见。


推荐阅读:

专辑|Linux文章汇总

专辑|程序人生

专辑|C语言

我的知识小密圈

关注公众号,后台回复「1024」获取学习资料网盘链接。

欢迎点赞,关注,转发,在看,您的每一次鼓励,我都将铭记于心~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/464839.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring系列(六) Spring Web MVC 应用构建分析

DispatcherServlet DispatcherServlet 是Spring MVC的前端控制器名称, 用户的请求到达这里进行集中处理, 在Spring MVC中, 它的作用是为不同请求匹配对应的处理器, 将结果传递给视图解析器最终呈现给客户端. 前端控制器模式(Front Controller Pattern)是…

做个好人,加个晚班

我和建平在腾讯加班的日子前几天,他让我给他发照片,因为公司里年末要发照片墙,他说要把我的和他的照片放上去,然后我硬是找了几张觉得不错的给他,然后他也真的放上去了。再看那些照片,拍出来的效果都不咋样…

中ridge_10种线性代数在数据科学中的强大应用(内附多种资源)

原文选自 | Analytics Vidhya作者 | Khyati Mahendru本文转载自 TalkingData数据学堂 ,未经允许禁止转载本文摘要线性代数为各种各样的数据科学算法和应用提供支持在这里,我会向您介绍通过线性代数帮助您成为更好的数据科学家的10种实际应用我们已将这些…

语言与golang语言运行速度_Golang语言情怀第13期 Go 语言设计模式 介绍

设计模式是什么俗话说:站在别人的肩膀上,我们会看得更远。设计模式的出现可以让我们站在前人的肩膀上,通过一些成熟的设计方案来指导新项目的开发和设计,以便于我们开发出具有更好的灵活性和可扩展性,也更易于复用的软…

苦练IoT应用开发,还能加速变现,这个机会别错过

都说人间大事,不过吃喝二字。厨房经济近年来显示出了巨大发展潜力,智能厨电已成为潮流趋势。智慧厨电究竟是如何——让厨房小白做出一顿可口大餐?让懒人摆脱厨房油烟和洗碗的困扰?让怕冷的人喝到永远55℃的热水?……在…

android人脸识别demo_零门槛解决Windows人脸识别应用开发难题

自人脸识别免费SDK——ArcFace3.0上线以来,凭借对人脸识别、活体检测、年龄检测、性别检测等核心算法模型进行全面升级,大幅提升算法鲁棒性,显著降低接入门槛,同时支持Windows、iOS、Android(包含Android10&#xff09…

Visual Studio会让嵌入式开发变得更香

在几个月之前,我一直非常喜欢用Source Insight看代码,主要是习惯了原来的风格。从Source Insight 转到vscode 的原因是,在腾讯使用samba连接Source Insight看代码非常非常卡,让我觉得很难受。然后是在同事的建议下更换了vscode,里…

现实世界的Windows Azure:采访InishTech的销售及市场部主管Andrew O’Connor

MSDN: 告诉我们关于你们公司的信息以及您为Windows Azure创建的解决方案。O’Connor: InishTech 有点不寻常。我们的软件许可和保护服务(SLPS)平台是一个传统的多租户Windows Azure应用程序,利用Windows Azure SDK、 Windows Azure Dev Fabri…

珠海半导体公司招聘

受一个朋友所托,帮忙发一个招聘信息公司名字:珠海极海半导体有限公司上班地点:广州岗位名称:FAE工程师岗位要求:薪资:15K左右,会根据实际面试情况做相应调整。一些聊天内容的消息供大家参考&…

Linux同步原语系列-spinlock及其演进优化

1. 引言通常我们的说的同步其实有两个层面的意思:一个是线程间的同步,主要是为了按照编程者指定的特定顺序执行;另外一个是数据的同步,主要是为了保存数据。为了高效解决同步问题,前人抽象出同步原语供开发者使用。不仅…

linux环境部署python3+django

1. 确定Linux安装C/C编译器,在线安装: yum install gcc gcc-c autoconf automake 2. 安装依赖环境: yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel 3. …

hp-socket 文本跟图片同时发送_文本、截图和应用,这样「包装」一秒变美观

社交网络被发明出来的一个重要目的就是分享,无论是所见所闻还是喜怒哀乐,亦或是脑海中突然迸发出的一段妙言,某个转瞬即逝的精彩瞬间,一篇深度好文,一个在少数派看到的绝赞应用……分享内容丰富多彩,相比之…

poj2041

简单题 View Code #include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <algorithm>using namespace std;#define maxn 30char order[maxn];char st[maxn];int l;void work(char ch){char x;int d;switch (ch) …

[转]Angular2 Material2 封装组件 —— confirmDialog确定框

本文转自&#xff1a;https://www.jianshu.com/p/0c566fc1730d 环境&#xff1a; Angular 4.0.0 Angular2 Material2 2.0.0-beta.3 node v7.4.0 npm 4.0.5 使用Dialog封装confirmDialog确定框 源代码 来&#xff0c;首先来看效果图~ 删除例子确定删除框点击确定后返回值1.定义通…

项目实战|100个蓝牙接收器发货了

还记得之前写的这篇文章不&#xff1a;《一个蓝牙实战项目的掏肺总结》&#xff0c;这个项目最近做完了&#xff0c;交了100套出去&#xff0c;这是发货前的大合照&#xff1a;做完此项目&#xff0c;有些许收获&#xff0c;在此分享给大家。东西虽简单&#xff0c;但它依然是一…

深圳的冬天真的来了

天气预报说&#xff0c;明天深圳的天气会很低。热了一整年&#xff0c;这次一定是真的了&#xff0c;大家出门记得穿厚一些。

date js 半年_moment.js 搜索栏获取最近一周,一个月,三个月,半年,一年时间

统计时间label: 统计时间,name: countTime,type: select,data: [{value: 0,text: 最近一周},{value: 1,text: 一个月},{value: 2,text: 三个月},{value: 3,text: 半年},{value: 4,text: 一年}]实现方式searchValue为搜索栏所选所填内容&#xff0c; 以及作为搜索和接口调用条件…

华为eudemon 200E的hrp双心跳热备配置

本文为大家介绍使用两台华为Eudemon200E防火墙实现双机双心跳的HRP热备的配置实例&#xff0c;主要的知识点包括&#xff1a;华为防火墙HRP、VRRP的配置&#xff0c;定义防火墙区域。 一、网络拓扑&#xff1a;二、配置要求&#xff1a; 1、两台防火墙为E200E-A和E200E-B&#…

2021 年 Linux 界的 12 件大事

2021年即将结束了&#xff0c;今天就和大家分享一些来自Linux世界最重要的大事&#xff0c;这些事件大大影响了Linux用户&#xff1a;1、理查德斯托曼回归2019年&#xff0c;自由软件基金会(Free Software Foundation)创始人理查德斯托曼&#xff08;Richard Stallman&#xff…

关于Treap的学习感受

好了我就很愉快的回来补坑了~ Treap也是一种平衡树&#xff0c;它较普通二叉查找树而言&#xff0c;每个节点被赋予了一个新的属性&#xff1a;优先级&#xff08;没错就是类似优先队列的优先&#xff09;&#xff0c;对于Treap中的每个结点&#xff0c;除了它的权值满足二叉查…