PD Typec 学习之旅(二)认识BC1.2快充协议

一、BC1.2快充协议的由来

BC1.2(Battery Charging Specification 1.2)是USB-IF(USB Implementers Forum)下属的电池充电(Battery Charging)工作组制定的协议,旨在规范通过USB端口为便携设备电池充电的标准。USB2.0协议规定了外设从USB充电器能抽取电流的最大值为500ma,随着USB设备对充电速度的逐渐要求,很明显500ma已经无法满足日益增长的快充需求,因此BC1.2快充协议应运而生,最早是基于USB2.0协议来实现的。引入了端口识别机制和分级检测流程,为后续快充技术奠定了基础。

二、BC1.2端口定义

BC1.2通过端口识别机制,允许设备安全获取更高的电流。分别有三种端口,SDP(标准下行端口)、DCP(专用充电端口)、CDP(充电下行端口)。

端口类型 电流支持 数据传输 典型应用场景 物理特性
SDP(标准下行端口) ≤500ma 支持 电脑USB口、普通适配器 D+/D-接15kΩ下拉电阻
DCP(专用充电端口) ≥1.5A 不支持 墙充、车载充电器 D+与D-短接(≤200Ω)
CDP(充电下行端口) ≤1.5A(USB2.0) ≤3A(USB3.0) 支持 带闪电标志的电脑USB口 含下拉电阻+内部检测电路

关键区别:

  • DCP:无数据传输能力,物理短接D+/D-
  • CDP:兼具快充与数据传输(如笔记本电脑的增强USB口)

三、BC1.2协议识别流程

BC1.2的识别过程如下图,分为4个步骤来识别。

3.1 VBUS Detect(VBUS检测)

每个PD(Portable Device,便携式设备)的VBUS电源线内部都有一个电压比较器,用来判断VBUS什么时候有效,和谁做对比呢?和内部的有效电压阈值做比较,可以理解是和一个定值比较,高于这个值就是有效的VBUS。参考值不是固定的,设计的时候保证它在0.8v~4v之间就可以。

3.2 Data Contact Detect(数据连接检测)

这个阶段不是必须的,因为USB端口可能支持数据协议也可能不支持。DP上有150mV(=1uA x 15k欧姆下拉电阻)的电压,DM上电压为0,这是一个硬件检测模块,用于帮助检测USB数据线与另外一端引脚的接触情况。端口如果不支持这个DCD阶段,就会在PD在attach event之后最大900ms内没检测到D+或ID PIN的连接,则会要求PD必须开始Primary Detection。如果PD支持这个DCD阶段,则能尽快检测数据线的连接,而后进行Primary Detection,无需等待超时的到来。

3.3 Primary Detection(首次检测)

该阶段作用主要用来识别是SDP还是charging port,即DCP和CDP。原理是 DP 发起,检测 DM

  • DP上加载0.6V电压,DM上电压为0,充电器类型是SDP
  • DP上加载0.6V电压,DM上电压为0.6V,则为DCP/CDP,进入Secondary Detection做进一步区分

3.4 Secondary Detection(二次检测)

该阶段的作用是进一步区分DCP和CDP。原理是 DM 发起,检测DP。

  • DM上加载0.8V电压,DP上电压为0,充电器类型是CDP
  • DM上加载0.8V电压,DP上电压为0.8V,充电器类型是DCP

四、结尾

通过这篇文章的介绍,我们大致了解了BC1.2协议的原理,BC1.2是其他快充的基础,以便我们后面学习其他的快充知识。

相关推荐
StarPrayers.6 分钟前
损失函数(Loss Function)、反向传播(Backward Propagation)和优化器(Optimizer)学习笔记
人工智能·笔记·深度学习·学习
IT_陈寒10 分钟前
Vite 5个隐藏技巧让你的项目构建速度提升50%,第3个太香了!
前端·人工智能·后端
孤廖13 分钟前
吃透 C++ 栈和队列:stack/queue/priority_queue 用法 + 模拟 + STL 标准实现对比
java·开发语言·数据结构·c++·人工智能·深度学习·算法
麦麦麦造31 分钟前
有了 MCP,为什么Claude 还要推出 Skills?
人工智能·aigc·ai编程
jerryinwuhan34 分钟前
利用舵机实现机器人行走
人工智能·机器人
武子康36 分钟前
AI-调查研究-107-具身智能 强化学习与机器人训练数据格式解析:从状态-动作对到多模态轨迹标准
人工智能·深度学习·机器学习·ai·系统架构·机器人·具身智能
沫儿笙36 分钟前
KUKA库卡焊接机器人二氧化碳节气
人工智能·机器人
insight^tkk1 小时前
【Docker】记录一次使用docker部署dify网段冲突的问题
运维·人工智能·docker·ai·容器
攻城狮7号1 小时前
AI+大数据时代:如何从架构到生态重构时序数据库的价值?
大数据·人工智能·时序数据库·apache iotdb·sql大模型
智能化咨询1 小时前
AI+大数据时代:时序数据库的生态重构与价值跃迁——从技术整合到行业落地
人工智能