:关注+星号公众号,不容错过精彩
作者:HywelStar
Hi, 大家好!根据前几章内容对USB,还有Type-C 都有了一定认识,本章节将对USB PD协议交互进行一个简单分析,本章节将可以获取或解决以下问题:- PD充电过程中,Source是如何确定输出哪个电压?
USB PD 协议从早期的USB 2.0 接口出现的BC 1.0 版本,5V 500mA,后来又出现了不同电压,最高电流5A,这样PD1.0 出现了。PD2.0 : 在PD 1.0 基础上添加了不同规格的电压与电流,VBUS 电压可以是5V、9V、12V、15V和20V。另外还添加了对电池信息的共享,设备可以查看电池状态,并根据需要调整充电参数。PD 3.0 : PD3.0 在PD2.0 上添加了PPS(programmable power supply)功能,添加更多的电池信息,PD通信进行设备的软件件版本识别功能,另外还有认证。加入认证的设备都能够安全有效地使用快充功能。PD3.1 :PD 3.1 最大的变化可以提供240W 的功率,电压高达48V,这样对于很使用于电动自行车,电动园艺和激光打印设备充电。电源方向不再固定,以允许产品(外围设备或主机)提供电源。新规范还优化了不同外设的电源管理。
PD 3.2 :关于PD 3.2 的芯片还没有找到,虽然协议是在2023年已经发布。PD 3.2 大致是对电压调整更加精细,调节梯度更小,对电池损耗也会更小。截止2024-8-8 最新的PD 版本为3.2 ,可以通过USB-IF
官网查看相关文档,关于协议文档大概有1000多页,地址:https://www.usb.org/document-library/usb-power-deliveryhttps://www.powerelectronicsnews.com/understanding-usb-power-delivery-3-2/2.1 E-Marker
E-marker芯片则是用于电缆认证,确保数据传输和电源供应的兼容性和安全性。PD协议芯片通过动态调整供电设备和接收设备之间的电压和电流,从而实现快速充电、提升能效,而E-marker芯片则存储着电缆的重要信息,如电缆长度、制造商信息、最大承载电流等,它通过与设备沟通这些信息,以保证电缆兼容和使用安全。
那么有数据线是不存在E-Marker, 首先就是传输速率影响,速率到达不了高速率。一般来说添加了E-marker芯片通过认证的,实际使用中主要在于显示器之间传递视频和音频信号,实现高速数据交互。
在一个数据线 上,可以是有两个或者一颗E-marker芯片,也就是看到的“一线双芯”,在对于这种高速传输的数据线当中,往往会比较短,想要达到USB4 Gen3 需要小于0.8M。
举例:
苹果240W USB-C 数据线内部是含有E-marker芯片,采用英飞凌CYPD2803A1-09FNXI,支持雷电4。2.2 PD 协议编码
明确点:PD 协议的传输是通过CC 脚一根线进行传输,一般为300kps上图为层间分布,重点看Physical Layer, Policy EnginePD 信号的编码规则是采用BMC 规则,原始的数据位为0,则信号保持不变 (以300kps来计算为3.33us),如果原始的数据位为1,则信号进行位翻转。
PD 信号数据链路层:
4b5b编码是一种用于数据传输的编码方法。在这种编码方法中,每4位二进制数据(4-bit)被映射为5位二进制编码(5-bit)。4b5b编码的主要目的是增加数据流中的转换数量,从而确保时钟恢复和数据同步。这种编码方法通常用于网络通信,例如以太网。2.3 PD 协议消息格式
关于控制消息的类型有:GoodCRC
, Accept
, Reject
, PS_RDY
, Get_Sink_Cap
关于数据消息类型:POD信息
,Request消息
, VDM 厂商自定义
扩展消息包含一些源和电池状态信息,还有一些固件更新,安全,自定义厂家信息等,这里可能对于一些厂家会加一些奇奇怪怪的东西。以上协议格式在PD 3.0 , 在最新的PD3.2 协议上会有新增很多类型。- Type-C 接入识别到Sink 端,确认身份,一端为供电方,一端为耗电方;
- Source 发送Source_Cap 消息,里面包含供电能力数据信息;
- Sink 发送 Request信息,会选择一个供电数据返回;
- Source 将会返回Accept/ Reject 信息;
- Source 之前如果接受这个请求,在这里将发送PS_Ready 信息;
整个过程来说不复杂,但是在充电期间,电压也是会有变化的,由于没有PD 协议分析仪,从网络寻找理解整个过程。充电过程中,Sink 端会告诉充电器,需要调整电压上图在经过了五百多次的通讯进行电压微调后,最终稳定在了7V3A这一个电压进行充电,以达到充的快温升低的目的,这就是PPS快充协议的通讯过程。
当设备充满通常会发送“GotoMin”命令,要求充电器降低输出,防止过度充电。
本章节主要对PD 协议进行简单分析,协议版本递增,目前已经使用新一点的协议应该是PD 3.1, 后续还有PD 3.2 ,协议上新增了很多,虽然PD 3.2 在功率没有看到很大优势,但是对电池损伤应该会更小。另外对于PD协议交互分析,过程不会很复杂,可以通过一些大厂TI
ST
等厂家的分析仪进行分析。目前国内的快充芯片也有很多做的非常好的厂家了,也希望国产越来好。下一章节将介绍GNSS 相关知识与软件上d一些调试,有兴趣不要忘记关注码思途远!https://www.codetd.com/article/11718198https://www.chongdiantou.com/archives/57970.htmlhttps://www.usb.org/document-library/usb-power-delivery