当前位置: 首页 > news >正文

PD协议学习二

控制消息(一)

1、GoodCRC

GoodCRC消息应由接收方发送,以确认先前的消息已被正确接收(即包含GoodCRC消息)。GoodCRC消息应返回该消息的MessageID,以便发送方能确定所确认的是正确的消息。GoodCRC消息的第一个比特应在接收到前一条消息最后一个比特后的tTransmit(MAX:195us)时间内返回。

在连续BIST模式下,BIST不发送GoodCRC消息(参见第6.4.3节“BIST消息”)。

当消息发送方在CRCReceiveTimer(0.9~1.1ms)超时前未收到GoodCRC消息时,重试机制会被触发。消息发送方使用该机制来检测由于配置通道(CC)上的噪声或其他干扰,消息未被接收方正确接收的情况。重试机制不得用于任何其他目的,例如为处理对已接收消息的所需响应而争取时间。

2.GotoMin

GotoMin(已弃用)消息已被弃用。0_0010消息类型不再有效,应以“不支持”消息进行响应。

3.Accept

在接受消息时,以下情况视为有效响应:

1>该消息将由SRC方以SPR模式发送,用于向接收方发出信号,表明SRC方愿意响应请求消息。

2>该信号应由SRC设备以EPR模式发送,用于向接收端表明SRC设备愿意响应EPR请求消息。

3>PR_Swap消息的接收方应发送该信号以表明其愿意进行电源角色交换,并已启动电源角色交换AMS流程。

4>该消息应由DR_Swap消息的接收方发送,以表明其愿意进行数据角色交换,并已启动数据角色交换AMS。

5>该消息将由VCONN_Swap消息的接收方发送,用于表明其愿意进行 VCONN 交换,并已启动 VCONN 交换AMS。

6>该消息应由FR_Swap消息的接收方发送,以表明其已启动快速角色交换AMS。

7>该信息应由Soft_Reset消息的接收方发送,以表明其已完成软件复位操作。

8>该消息应由Enter_USB消息的接收方发送,以表明其已开始执行Enter USB AMS操作。

9>该数据应由Data_Reset消息的接收方发送,以表明其已启动数据重置AMS流程。

在接受消息的最后一比特后,应在tReceiverResponse(15ms)时间内发送AcceptMessage。

4.Reject

在以下情况下,拒绝消息属于有效响应:

1>该信号将发送至接收端,以在SPR模式下指示SRC端无法满足请求消息。这可能是由于请求无效,或是SRC端无法再提供其先前声明的内容所致。

2>该信号将发送至接收端,以EPR模式指示SRC端无法满足EPR请求消息。这可能是由于请求无效,或因SRC端无法再提供其先前声明的内容所致。

3>PR_Swap消息的接收方应发送该消息以表明其无法执行电源角色交换操作。

4>该消息应由处于EPR模式下的PR_Swap消息接收方发送。

5>该消息应由DR_Swap消息的接收方发送,以表明其无法执行数据角色交换操作。

6>该消息应由当前非 VCONN 源的VCONN_Swap消息接收方发送,以表明其无法执行 VCONN 交换操作。

7>当 UFP 接收到Enter_USB消息时,将发送该消息以表明其无法进入请求的USB模式。

当请求发送方(EPR_Request、PR_Swap、DR_Swap、VCONN_Swap或Enter_USB Message)收到拒绝消息响应时,必须在满足以下任一条件前,不得向接收方重复发送相同消息:

SRC端发送Source_Capabilities消息或EPR_Source_Capabilities消息后,将触发一种新的显式合同协商机制。该机制可由以下情况触发:Get_Source_Cap、EPR_Get_Source_Cap、PR_Swap、Soft_Reset、Hard_Reset、DR_Swap、断开重连

5.Ping Message

这条控制命令已经弃用了(PD3.2)

6.PS_RDY Message

PS_RDY消息应由SRC设备发送(或在电源角色交换AMS或快速角色交换AMS期间由新接收端与新SRC设备共同发送),以表明其电源已达到预期运行状态。

7.Get_Source_Cap Message

端口可通过发送Get_Source_Cap(获取SRC能力)消息,请求其端口伙伴(如具备双角色电源功能的设备)的SRC能力及双角色电源功能。端口应通过返回Source_Capabilities消息予以响应。

8.Get_Sink_Cap Message

端口可通过发送Get_Sink_Cap(获取接收端能力)消息,请求其端口伙伴(如具备双角色供电功能的设备)提供接收端能力及双角色供电功能。接收端将通过返回Sink_Capabilities消息进行响应。

DRD端口应具备从PE_SRC_Ready或PE_SNK_Ready状态执行数据角色切换的能力。DFP和通UFP亦可从上述状态执行数据角色切换。数据角色切换应被视为与端口伙伴间正在进行的USB通信中的线缆拔插操作具有同等效力。若在接收到DR_Swap消息时端口伙伴间存在任何活动模式,则需执行硬件复位操作。若线缆插头存在任何功能模式,则 DFP 不得发送DR_Swap消息,并应在接收数据角色切换请求前强制退出线缆插头中的所有功能模式。

9.DR_Swap Message

DR_Swap消息用于在端口伙伴之间交换 DFP 与 UFP 操作,同时保持 VBUS 上的功率流向。无论是否支持USB通信功能,均可使用数据角色交换流程。支持USB通信功能的 DFP 将以附件中的USB主机身份启动,支持USB通信功能的 UFP 则以附件中的USB设备身份启动。

DRD端口应具备从PE_SRC_Ready或PE_SNK_Ready状态执行数据角色切换的能力。DFP和UFP亦可从上述状态执行数据角色切换。数据角色切换应被视为与端口伙伴间正在进行的USB通信中的线缆拔插操作具有同等效力。若在接收到DR_Swap消息时端口伙伴间存在任何行为模式,则需执行硬复位操作。若线缆插头存在任何行为模式,则 DFP 不得发送DR_Swap消息,并应在接收数据角色切换请求前强制退出线缆插头中的所有行为模式。

VBUS 与 VCONN 源在数据角色交换过程中应保持不变,CC线路上的Rp/Rd电阻器亦应维持原状。

如果在另一方同意了DR_Swap的情况下仍没有交换过来则需要硬件复位。

10.PR_Swap Message

PR_Swap消息可由任一端口伙伴发送,用于请求交换电源角色。消息接收方应通过发送接受消息、等待消息或拒绝消息予以响应。

在EPR模式下不得发送PR_Swap消息。若需进行电源角色交换,则必须先退出EPR模式。

在成功完成电源角色交换后,端口伙伴需执行协议层复位操作(相当于软件复位):在尝试握手前,需重置其MessageID计数器、重试计数器及协议层状态机。此时新SRC节点还需同步重置其CapsCounter。

新SRC端应在CC线上将电阻值设置为Rp,SNK端应在CC线上将电阻值设置为Rd。当执行从SRC端到SNK端的电源角色交换时,端口需将CC线电阻从Rp切换至Rd;当执行从SNK端到SRC端的电源角色交换时,端口需将CC线电阻从Rd切换至Rp。电源角色交换过程中, DFP(主机)、 UFP(设备)数据角色及 VCONN 源端均保持不变

11.Vconn_Swap Message

VCONN_Swap消息用于请求交换 VCONN 源。消息接收方应通过发送接受消息、拒绝消息、等待消息或不支持消息进行响应。

若发送接受消息,端口伙伴需执行 VCONN 交换。新的 VCONN 源应在tVcONNSourceOn(spr模式390~480ms)时间内发送PS_RDY消息,表明其已开始 VCONN 。初始 VCONN 源在收到PS_RDY消息 EOP 的最后一位后,应在tVCONNSourceOff(spr模式750~920ms、epr模式1120~1400ms)时间内停止 VCONN 。

在 VCONN 交换过程中, DFP、 UFP的数据角色及 VBUS 来源应保持不变,CC线路上的Rp/Rd电阻亦应保持原状。

12.Wait Message

可用于对Request、EPR_Request、PR_Swap、DR_Swap、Vconn_Swap和Enter_USB等消息的回复。

13.Wait in respone to a Request Message

等待消息允许SRC节点恢复满足设备请求所需的电力。SRC节点仅应在端口伙伴之间存在明确协议时,才向请求消息发送等待消息。

14.Wait in respone to a PR_Swap Message

用于响应PR_Swap消息时,表示未来可能存在电源角色交换的可能性。这种情况通常发生在接收PR_Swap消息的设备需要进一步评估请求时,例如向消息发起方索取接收端能力参数。完成评估后,任一端口伙伴应重新发起电源角色交换流程,通过发送PR_Swap消息来触发该过程。

15.Wait in respone to a DR_Swap Message

用于响应DR_Swap消息时,表示未来可能存在数据角色交换的情况。当接收DR_Swap消息的设备需要进一步评估请求时,即可触发该机制。待评估完成后,任一端口伙伴需重新发送DR_Swap消息以启动数据角色交换流程。

16.Wait in respone to a Vconn_Swap Message

用于响应VCONN_Swap消息时,表示未来可能进行VCONN_Swap操作。这种情况通常出现在接收方设备需要进一步评估该请求时。评估完成后,任一端口伙伴应通过发送VCONN_Swap消息重新启动 VCONN 交换流程。

17.Wait in respone to an Enter_USB Message

由 UFP 在响应Enter_USB消息时使用,用于表明未来可能进入请求的USB模式。例如,当 UFP 需要协商更多功率才能进入该模式时,就可能出现这种情况。一旦 UFP 完成此操作, DFP 应通过发送Enter_USB消息重新启动EnterUSB流程。

http://www.jsqmd.com/news/608841/

相关文章:

  • 从文本分类到股价预测:BiLSTM的5个实战应用场景与TensorFlow 2.x实现对比
  • 旅行商问题五大经典算法实战对比:从理论到代码实现
  • TI F28P65X开发板实战:CPU Timer精准定时与LED控制
  • (四大天王)Python程序设计之四大核心数据结构:集合篇
  • 4月8日
  • 不写代码也能玩转智能家居:用App Inventor为ESP8266+Alexa项目做个控制App
  • C++编程中的异常处理机制:try/catch/throw详解
  • 从踩坑到解决:Flutter 鸿蒙 hap 编译与插件实战全指南
  • C++的std--ranges算法自定义比较器与等价关系在集合
  • 别再吹牛了,% Vibe Coding 存在无法自洽的逻辑漏洞!贤
  • 2026成都装修公司全攻略:怎么选、哪家好、靠谱推荐与区域精选 - 推荐官
  • 炸了!Claude Code终于补上最大短板:MEMORY.md让它第二天还记得你
  • [特殊字符] 第49课:二叉树的最近公共祖先
  • 力扣第98题:颜色分类
  • 数控车床自动回转刀架机电系统设计全套文件(说明书+CAD图纸+开题报告+任务书+翻译) 2019
  • 你的SSH密钥可能已经过期了悼
  • 号易平台正规运营主体(莱网公司)及官方联系方式全指南 - 号易官方邀请码666666
  • 人人会装OpenClaw-window版本
  • 绝对能解决IntelliJ IDEA 控制台中文乱码问题!!!
  • 车载光学解决方案:定义、架构与产业全景解析
  • 基于STM32的温湿度、甲醛、PM2.5空气质量检测系统采集设计资料,联系赠送答辩模板等全套资...
  • Python 之 dataclasses 和 pydantic 数据解析和校验
  • P0971WV双节点总线模块
  • 别再踩坑了!SQL Server数据类型那点事儿,看懂这篇少背三个锅揪
  • Spring 事务从入门到精通:一篇搞定事务失效、传播行为、回滚规则(Spring系列10)
  • 2026届必备的五大降AI率工具推荐榜单
  • 基于STM32单片机的实验室环境综合检测系统该程序实现了温湿度、烟雾、空气质量检测及显示功...
  • langchain学习--提示词
  • 值类型与引用类型:别再只背“栈和堆”了,看这 个实际影响舱
  • 用Matlab从零复现RRT路径规划:手把手教你写代码并可视化避障过程