高通Quick Charge快速充电原理分析

news2024/10/1 17:40:28

1 三段式AC充电器
涓流、恒流、恒压。

2 QC 2.0
2.1 高通Quick Charge 2.0 快速充电原理分析
QC 2.0快速充电需要手机端和充电器都支持才行。
当将充电器端通过数据线连到手机上时,充电器默认的是将D+和D-短接的,这样手机端探测到的充电器类型是DCP(参见本人另一篇博文《高通平台USB 2.0和USB 3.0接口充电器识别原理》),手机以默认的5V电压充电,接着过程如下:
(1)如果手机端使能了快速充电协议,Android用户空间的hvdcp(high voltage dedicated charging port)进程启动,并且在D+上加载0.325V的电压维持超过1.25s上;
(2)充电器检测到D+上电压0.325V维持超过了1.25s,就断开D+和D-的短接,由于D+和D-断开,所以D-上的电压不再跟随D+上的电压0.325V变动,此时开始下降;
(3)手机端检测到D-上的电压从0.325V开始下降维持1ms以上时,hvdcp读取/sys/class/power_supply/usb/voltage_max的值,如果是9000000uV,就设置D+上的电压为3.3V,D-上 的电压为0.6V,否则设置D+为0.6V,D-为0V;
(4)充电器检测到D+和D-上的电压后,就调整充电器端的输出电压。
Table 2-1 QC 2.0充电握手协议

注意:
当DP=3.3V,而DM=3.3V時,充電頭輸出20V。
当DP=0.6V,而DM=3.3V时,表示QC将进入continuous mode(也就是QC 3.0模式)。
- 参考 smbchg_prepare_for_pulsing()。

2.2 Parallel Charging
Question:单独的PMI8952的充电最大电流是多大?
Answer:单独PMI8952最大充电电流是2.0+A,但是实际电流应该不到2A,主要是依赖于PCB板子的布局和thermal等参数强相关。

Question:如果采用并行充电,那么PMI8952的充电电流一般多大呢?是自动的?还是可以指定的?
Answer:如果是并行充电,PMI和SMB组合最大3.0A左右,自动调节各个通道的电流。

3 QC 3.0
QC 3.0的主要优势是可优化手机内的DC/DC效率:
(1)消除了QC 2.0中固有的会在电压切换时造成的手机发热问题;
(2) QC 3.0通过移除手机DC/DC转换器还可简化无线充电器架构,QC 3.0可大大降低DC/DC转换电路的损耗,从而有效缓解了快充时的发热问题。

由于全面使用了Type-C接口取代原来的MicroUSB接口,QC 3.0最大电流也提升到了3A,因为电压更低所以效率提升最高达38%,充电速度提升27%,发热降低45%。

QC 2.0提供5V、9V、12V和20V四档充电电压,QC 3.0则以200mV为步幅,提供从3.6V到20V电压的灵活选择。采用 QC 3.0时,便携式设备通过USB接口的D+和D-信号提交电压选择请求,在同一时间可能有不规律的USB数据通信。关于QC 3.0支持的总线电压(VBUS) 范围,A级为3.6V至12V,B级为3.6V至20V。QC 3.0在分立模式下等同于QC 2.0,以0V、0.6V、3.3V三级逻辑通过静态D+/D- 值选择VBUS;在连续模式下,新的QC 3.0以200mV小步幅增加或降低VBUS,让便携式设备选择最适合的电压达到理想充电效率,更具灵活性,其最大负载电流限制为3A,最高功率可达60W。

实际产品中都是最大18W(可以认为是9V * 2A),与QC 2.0是一样的。
Table 3-1 QC 3.0充电握手协议

识别顺序:先是5V时电流1.2A,然后电压升到9V,电流下降到0.2A(HVDCP_ICL_VOTER),之后电压降到5V,电流不变;最后电压和电流同时上升,稳定在7V @ 2.2A左右,功率到15~17W左右,这个识别过程大概15秒。

4 QC 4.0
QC 4.0基于USB PD 3.0 PPS。
QC 4.0加入了“智能最佳电压技术”(INOV),并且加入USB PD支持。相比QC 3.0  200mV的步进电压调节档位,QC 4.0进一步优化INOV算法,将调节精度做到了20mV (注:USB PD的电流调节步长是50mA),比上代提了近10倍精度。将充电最高功率调整到28W,方案设计为5V/4.7A~5.6A和9V/3A,舍弃了12V的设计。

5 Acronym
POWER_SUPPLY_DP_DM_DPR_DMR:R means Remove
POWER_SUPPLY_DP_DM_DPF_DMF:F means Floated,High-Z
HVDCP-OPTI:High Voltage Dedicated Charging Port - OPTImization

ARC:Argonant RISC Core
AT91SAM9260:SAM means Smart ARM-based Microcontroller
ATMEL SAMBA:ATMEL Smart ARM-based Microcontroller Boot Assistant
CC2530:TI ChipCon2530
DWC2:Design Ware Controller 2,Apple的嵌入式设备,包括iPad和iPhone都是使用的DWC2
ISP1161:Philips' Integrated host Solution Pairs 1161,“Firms introduce USB host controllers”,https://www.eetimes.com/document.asp?doc_id=1290054
Quirks:the attributes of a device that are considered to be noncompliant with expected operation
SL811HS:Cypress/ScanLogic 811 Host/Slave,性能上与ISP1161(Integrated host Solution Pairs 1161)相当
TDI:TransDimension Inc.,该公司首先发明了将TT集成到EHCI RootHub中的方法,这样对于嵌入式系统来说,就省去了OHCI/UHCI的硬件,同时降低了成本,作为对该公司的纪念,Linux内核定义了宏ehci_is_TDI(ehci);产品UHC124表示USB Host Controller;收购了ARC USB技术;现已被chipidea收购,chipidea又被mips收购
TLV:TI Low Value,高性价比
TPS:TI Performance Solution
TT:Transaction Translator(事务转换器,将USB2.0的包转换成USB1.1的包)

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

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

相关文章

【前端】Webpack5中Html和CSS的压缩打包

1.Webpack5简介 1.1.Webpack简介 (1)webpack的发展历程 2012.3—webpack(问世) 2014.2—webpack1 2016.12—webpack2 2017.6—webpack3 2018.2—webpack4 2020.10—webpack5(要求node版本10.13) &a…

iview项目中,radio选中值回显问题

问题描述:iviewvue项目中,数据从路由传参进入编辑页面,页面的radio选中状态首次显示,浏览器刷新后不显示: 1、首次进入: 2、浏览器手动刷新后: 经查,路由传参的值为字符串&#xff…

【ARM AMBA Q_Channel 详细介绍】

文章目录 1.1 Q_Channel 概述1.2 Q-Channel1.2.1 Q-Channel 接口1.2.2 Q-Channel 接口的握手状态1.2.3 握手信号规则 1.3 P_Channel的握手协议1.3.1 device 接受 PMU 的 power 请求1.3.2 device 拒绝 PMU 的 power 请求 1.4 device 复位信号与 Q _Channel 的结合1.4.1 RESETn 复…

驱动开发5 阻塞IO实例、IO多路复用

1 阻塞IO 进程1 #include <stdlib.h> #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <sys/ioctl.h> #include <fcntl.h> #include <unistd.h> #include <string.h>int main(int argc, char co…

真空室的内表面加工

真空室和部件的内表面是在高真空和超高真空下实现工作压力的重要因素。必须在该条件下进行加工&#xff0c;以最小化有效表面&#xff0c;并产生具有最小解吸率的表面。 真空室和部件的表面往往是在焊接和机械加工后经过精细玻璃珠喷砂的。具有限定直径的高压玻璃珠被吹到表面…

Python创建条形图加点重叠

目录 代码效果图 要使用Python的Seaborn库创建一个条形图加点重叠的统计图&#xff0c;可以使用 seaborn.barplot和 seaborn.stripplot函数。以下是一个论文级别的简单示例代码&#xff0c;演示如何创建这种效果的图 代码 import seaborn as sns import matplotlib.pyplot a…

05 MIT线性代数-转置,置换,向量空间Transposes, permutations, spaces

1. Permutations P: execute row exchanges becomes PA LU for any invertible A Permutations P identity matrix with reordered rows mn (n-1) ... (3) (2) (1) counts recordings, counts all nxn permuations 对于nxn矩阵存在着n!个置换矩阵 , 2. Transpose: 2.…

如何将 huggingface上的模型文件下载到本地

写在前面 缘由&#xff1a;国内的GPU服务器直接调取 huggingface 上模型经常会失败&#xff0c;因此下载到本地就能免去许多麻烦。 方法三基于知乎上一位博主所提出方法的基础上进行改进&#xff0c;可以将huggingface上模型由 Colab 存进 谷歌云盘 或者 百度云盘。特别是有些…

Appium+Python+pytest自动化测试框架的实战

本文主要介绍了AppiumPythonpytest自动化测试框架的实战&#xff0c;文中通过示例代码介绍的非常详细&#xff0c;具有一定的参考价值&#xff0c;感兴趣的小伙伴们可以参考一下 先简单介绍一下目录&#xff0c;再贴一些代码&#xff0c;代码里有注释 Basic目录下写的是一些公…

【文章学习系列之模型】Koopa

本章内容 文章概况模型结构主要结构实验结果消融实验模型效率分解效果定性分解效果定量算子稳定性 总结 文章概况 《Koopa: Learning Non-stationary Time Series Dynamics with Koopman Predictors》是2023年发表于NeurIPS的一篇论文。考虑到时序预测中训练和推理数据之间甚至…

网工内推 | 网络工程师,大专以上、HCIA认证即可,最高14薪

01 湖南口味王集团 招聘岗位&#xff1a;网络工程师 职责描述&#xff1a; 1、负责园区内电脑日常维护&#xff1b; 2、负责园区内办公周边设备的日常维护&#xff0c;如打印机、投影仪等&#xff1b; 3、负责园区内电话日常维护&#xff1b; 4、负责园区内信息资产管理&#…

vcomp100.dll丢失的解决方法,一键修复vcomp100.dll丢失问题

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“vcomp100.dll丢失”。这个错误通常会导致某些程序无法正常运行&#xff0c;给用户带来困扰。为了解决这个问题&#xff0c;我整理了以下五个解决方法&#xff0c;希望能对大家有所帮助。 一…

Python-----for循环基本语法及其应用---对序列进行遍历循环

for循环基本语法 for循环结构主要用于&#xff08;序列 &#xff1a;包括 字符串、列表、元组、集合以及字典&#xff09;类型数据的遍历&#xff08;循环&#xff09;操作。 遍历(Traversal)&#xff0c;是指沿着某条搜索路线&#xff0c;依次对树&#xff08;或图&#…

《深入理解java虚拟机 第三版》学习笔记三

第 8 章 虚拟机字节码执行引擎 代码编译的结果从本地机器码转变为字节码&#xff0c;是存储格式发展的一小步&#xff0c;却是编程语言发展的一大步。 8.1 概述 执行引擎是 Java 虚拟机核心的组成部分之一。“虚拟机”是一个相对于“物理机”的概念&#xff0c;这两种机器都…

Python3 + Appium + 安卓模拟器实现APP自动化测试并生成测试报告

这篇文章主要介绍了Python3 Appium 安卓模拟器实现APP自动化测试并生成测试报告,本文给大家介绍的非常详细&#xff0c;对大家的学习或工作具有一定的参考借鉴价值&#xff0c;需要的朋友可以参考下 正文 一、安装Python3 直接登录Python官网https://www.python.org/&…

C++数据结构X篇_21_插入排序(稳定的排序)

文章目录 1. 插入排序原理2. 算法图解3. 核心代码&#xff1a;4. 插入排序整体代码实现 1. 插入排序原理 插入排序是一种最简单直观的排序算法&#xff0c;它的工作原理是通过构建有序序列&#xff0c;对于未排序数据&#xff0c;在已排序序列中从后向前扫描&#xff0c;找到相…

Unity 自定义小地图

最近工作做了个小地图&#xff0c;再此记录下思路。 1、准备所需素材 显示为地图&#xff08;我们取顶视图&#xff09;。创建一个Cube&#xff0c;缩放到可以把实际地图包住。实际地图的尺寸和偏移量 。我这里长宽都是25&#xff0c;偏移量&#xff08;1&#xff0c;0&…

MySQL进阶(数据库引擎)——MyISAM和InnoDB引擎的区别

1.是否支持行级锁 MyISAM 只有表级锁&#xff0c;而InnoDB 支持行级锁和表级锁&#xff0c;默认为行级锁。 &#xff08;1&#xff09;MySQL大致可以归纳为以下3种锁&#xff1a; 表级锁&#xff1a;开销小&#xff0c;加锁快&#xff1b;不会出现死锁&#xff1b;锁的粒度大…

C# FileInfo类的使用方法及常用操作(附代码示例)

在C#编程中&#xff0c;处理文件操作是一项常见而重要的任务。为了更好地管理和操作文件&#xff0c;C#提供了一个强大且灵活的FileInfo类。本文将深入探讨C# FileInfo类的使用方法&#xff0c;并为您提供一些实用的代码示例。 目录 一、什么是FileInfo类&#xff1f;二、使用F…

CLion使用SSH远程连接Linux服务器

最近要一直用实验室的服务器写Linux下的C代码, 本来一直用VScode(SSH)连接服务器, 但是我以前还是用JetBrains的IDE用的多, 毕竟他家的IDE代码提示和功能在某些细节上更加丰富。所以这次我使用了Clion里的远程连接(同样也是SSH工具)连接上了我的服务器, 实现了和VScode上同样的…