历史上的今天
今天是:2026年03月03日(星期二)
2023年03月03日 | STM32G0技术详解 _ Type-C-PD协议
2023-03-03 来源:zhihu
这篇文章主要介绍一下Type-C的PD协议。
USB PD包

需要注意的是,PD仅在一条单线上通讯,所有PD包里的东西都是串行的。
前导码

前导码是以0开始的包含64个0和1的序列,它本身是不进行4b5b编码的。
数据包开始标识

SOP*是一个通用术语,指不同数据包的开始,它向接受者指明包的开始,指示谁是此消息的接受者。
USB PD消息
控制消息(16bit):管理接口合作伙伴之间的消息流或进行交换不需要额外数据的消息。

数据消息(48-240bit):至少一个数据对象,最多7个数据对象。
发现和协商电源管理;
系统自测BIST;
厂商自定义(VDM)。

扩展消息(26-260byte)
用于源和电池信息的交互;
使用安全;
用于固件更新;
供应商定义。
![]()
消息Summary

USB PD消息头格式
消息头格式:
每一个消息包含一个消息头;
消息头包含关于消息和PD端口功能的基本信息。


控制消息
控制消息(16bit):管理端口合作伙伴之间的消息流或进行交换不需要额外数据的消息。

数据消息
数据消息(48-240bit),至少一个数据对象,最多7个数据对象。数据消息应该由消息头组成,后面跟着一个或多个数据对象。数据消息很容易识别,因为消息头中的数据对象字段的数量是非零值。它包含下面几类数据对象:
BIST数据对象(BDO)、电力数据对象(PDO)、请求数据对象(RDO)、厂商定义数据对象(VDO)、电池状态数据对象(BSDO)、警报数据对象(ADO)。

CRC&EOP
CRC是32位的,引用头和所有数据。
不包括前言、SOP和EOP;
多项式=0x04C1 1DB7;
初始值=0XFFFF FFFF
EOP是单k码(5位)
它触发当前帧的CRC结束(开始计算);
它可以在任何时候发送,以提前结束一个数据包始。
SOURCE供电能力
电力能力消息:
消息类型为SOURCE为00001 SINK为00100;
至少有一个电力数据对象;
如果还有其他的固定支出的对象,应该是从低到高的顺序;
如果有电池对象,按从低到高的电压顺序发送;
如果有可变电力供应对象,按从低到高的顺序;
如果有PPS对象,按从低到高的电压顺序。
功能消息还应包含发送端口的消息,后面跟着最多6个额外的power数据对象。
能力信息中的PDOs应按以下顺序发送:

允许转换



VConn的交换顺序

数据角色转换

厂商自定义信息
可分为结构化(SVDM)和非结构化(VDM)。
非结构化:非结构化VDM没有在VDM报头中定义B14……0的内容。它们的定义和使用时VID指出的供应商的唯一责任。当PD上出现硬复位时,端口合作伙伴和电缆插头将退出使用非结构化VDM进入的任何状态;
非结构化VDMs只能在有明确连接的情况下使用;
在订立明确的连接前,不得发送非结构化的VDMs,接收时应予以忽略;
只有DFP应该是非结构化VDMs的发起者;
只有UFP或电缆插头应作为非结构化VDM的响应者;
在任何其他情况下,不得启动或响应非结构化VDMs;
命令序列应该是可中断的,例如,由于需要与电源相关的AMS;
非结构化VDMs只能在主动模式下的模态操作中使用;
非结构化VDMs可以与SOP*包一起使用;
当DFP或UFP不支持非结构化VDMs或不识别VID时,它将返回一条Not_Supported消息。

结构化:将VDM类型字段设置为1定义了在结构化VDM报头中使用比特B14……0;
结构化VDMs仅在有明确连接的情况下使用,但下列情况除外:在建立一个明确的契约之前,一个源可能会发出Discover身份信息,作为发起者,使用SOP*的信息包将其发送到电缆插头。
除了输入模式和退出模式命令之外,任何端口都可以是结构化VDMs的发起者,发起者应仅由DFP发起;
电缆插头只能作为结构化VDMs的应答者;
在任何其他情况下,不应启动或响应结构化VDMs;
当DFP或UFP不支持结构化VDMs时,任何接收到的结构化VDMs都应返回一个Not_Supported消息;
当电缆插头不支持结构化VDMs时,接收的任何结构化VDMs都应被忽略;
一个DFP、UFP或电缆插头,它支持结构化VDMs,并接收一个结构化VDM的SVID,它不承认,应该用NAK命令回复;
结构化的VDM命令序列应该是可中断的,;例如,由于需要与电源相关的AMS。
VDM命令

Discover VDM ACK


Discover SVIDs命令、应答



Discover Mode命令、应答



Enter Mode命令、应答


Exit Mode命令、应答


史海拾趣
|
怎样才能学好电子技术 这个问题很大,解决这个问题是一个系统工程,首先需要时间,还要多看书和多实践。 电子技术、无线电维修技术绝不是一门容易学好、短时间内能够掌握的科学。由于这门科学所涉及的方方面面很多,各方面又相互 ...… 查看全部问答> |
|
首先,对于频谱仪来说电源是非常重要的,在给频谱仪加电之前,一定要确保电源接法正确,保证地线可靠接地。频谱仪配置的是三芯电源线,开机之前,必须将电源线插头插入标准的三相插座中,千万不要使用没有保护地的电源线,以防止可能造成的人身伤害 ...… 查看全部问答> |
|
急求verilog lcd1602 驱动程序? 谢谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!… 查看全部问答> |
|
求助:wince socket 蓝牙编程中怎样用OBEX协议封装数据 我是刚接触蓝牙开发的,最近要做一个蓝牙文件传输的应用,就是实现蓝牙设备之间的文件传输, MSDN上研究过SOCKET实现的API函数,但是不知道连接成功后发送的数据怎样才能让对方识别, 网上有人说\"这些数据必须是经过OBEX协议封装好的数据\" 请做过这 ...… 查看全部问答> |
|
无校验时收发正常 看了下手册 添加校验的话 要M=1(9BIT ) PCE = 1 PS = 0/1 奇偶作为9bit里的MSB发送 都配置好了以后 用串口调试助手调试 无论怎么配置只有选odd 才能正常发送接收 囧。。。 odd.JPG (7 ...… 查看全部问答> |
|
【视频分享】 TI OMAP 5处理器平台强大的图形能力演示 简介:通过业界知名的GL Benchmark 2.5的测试,TI OMAP 5处理器平台具有强大的图形能力,领先目前市场最领先的平板电脑12%左右,同时也领先与其它竞争对手的处理器平台。 $(\'swf_dN8\').innerHTML=AC_FL_RunContent(\'width\', \'550\', ...… 查看全部问答> |




