T/TAF 266-2025 T/CCSA 668-2025 移动终端融合快速充电技术要求(第二阶段)

文档天下 图书评论5阅读模式
资源简介

  ICS 33.050

CCS M30

团 体 标 准

T/CCSA 668—2025 T/TAF 266—2025

移动终端融合快速充电技术要求(第二阶段)

Universal fast charging requirement for mobile devices (Phase 2)

2025-02-24 发布 2025-02-24 实施

中国通信标准化协会

电信终端产业协会

发 布

前 言

本文件按照 GB/T 1.1—2020《标准化工作导则 第 1 部分:标准化文件的结构和起草规则》的规定起草。

请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别专利的责任。

本文件由中国通信标准化协会和电信终端产业协会共同提出,并分别归口。

本文件起草单位:中国信息通信研究院、华为终端有限公司、OPPO 广东移动通信有限公司、维沃移动通信有限公司、矽力杰半导体技术(杭州)有限公司、瑞芯微电子股份有限公司、深圳立辉科技有限公司、深圳电酷网络科技有限公司、小米通讯技术有限公司、荣耀终端有限公司、珠海智融科技股份有限公司、芯海科技(深圳)股份有限公司、上海晶丰明源半导体股份有限公司、中车青岛四方机车车辆股份有限公司、中国铁道科学研究院集团有限公司电子计算技术研究所。

本文件主要起草人:徐春莹、赵晓昕、李东豫、彭江、郭朋飞、林尚波、李宗健、王超、张加亮、陈栋、杨成军、田晨、刘臻、张元、史振宁、吴春雨、秦冲、文司华、王立龙、曾兵、王志强、姚伦慧、王彦腾、周海滨、罗九兵、严凯、周如生、孙长宇、张健、张明威、苏远腾、郑连生、龙智帆、赵砚博、孙瑞囡、张奋伟、董传龙、冯梓允、任行、袁经纬、何碧俊、李杰强、杨璐、梁源超、杨乐、冯志强、陈立煌、郭小峰、王明哲。

引 言

为适应信息通信终端产业发展对终端快速充电技术标准的需要,由中国通信标准化协会和电信终端产业协会共同组织制定本文件,推荐有关方面采用。有关对本文件的建议和意见,向中国通信标准化协会和电信终端产业协会反映。

近年来,终端快速充电技术迅速发展,尤其在充电速度、充电安全、充电智能管理方面提升显著,快充体验获得了广大用户的广泛认可并已成为手机等智能终端的标配特性。

但快充产业长期存在协议互不兼容的问题:不同品牌终端和适配器之间不能有效识别,只能实现较低功率的充电。一方面,用户快充体验受到很大的制约和限制,不兼容问题成为用户的一大痛点;另一方面,由于充电标准不统一,导致产业链上下游厂家研发通用快充电源芯片和配件的风险和成本相对高昂。技术制式的不统一也将妨碍终端绿色能源和循环经济的长期发展。

本文件面向用户需求,制定移动终端的融合快速充电标准,解决互配快充不兼容问题,并作为快充技术长期演进的基础,促进厂家快充技术在行业内现有终端的互通使用,同时指导和规范设备制造商(上下游产业链)的产品研发和生产,为终端使用者创造快速、安全、兼容的充电使用环境。

移动终端融合快速充电技术要求(第二阶段)

1 范围

本文件规定了移动通信充电设备终端(以下简称“充电设备 ”)、电源供应设备(以下简称“供电设备 ”)与连接线缆(以下简称“线缆 ”)之间实施快速充电的接口及融合快速充电技术要求(以下简称“UFCS ”),以及充电设备、供电设备与线缆在该快速充电系统中的交互流程要求。

本文件适用于采用有线连接方式的支持 UFCS 的充电设备、供电设备与线缆的设计与应用,同时也适用于支持 UFCS 的芯片设计、生产与应用。

2 规范性引用文件

下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。

安全散列标准(联邦信息处理标准出版物 180-2)(Secure Hash Standard (FIPS PUB 180-2))。

3 术语和定义

下列术语和定义适用于本文件。

3.1

专有供电模式 dedicated charging mode

供电设备额定输出电流大于 1.5A 的供电模式,在此模式下供电设备输出端口 D+和 D-短路,D+上检测的电压大于 0.4V。

3.2

数据帧 data frame

数据传输基本单元,包含 1 位数据传输起始位、8 位数据位、1 位数据传输结束位。

3.3

数据包 data packets

协议层完整消息数据,包含 Training 字符、消息头、消息主体、CRC 校验等数据帧。

3.4

供电设备 source

提供电能,并通过线缆与充电设备连接,比如电源适配器等。

3.5

充电设备 sink

通过线缆接收电能的设备,如移动终端、笔记本电脑等。

3.6

双角色设备 dual role device

同时具备 UFCS 供电和 UFCS 充电能力的设备。

3.7

线缆 cable

用于连接供电设备和充电设备。线缆应包含 VBUS 、D+ 、D-、GND 四根信号线。如果线缆要支持UFCS 的大功率充电模式,应集成线缆电子标签。

3.8

厂家自定义鉴权 vendor defined authentication

UFCS 充电功率大于设定阈值时,设定阈值由厂家自定义,充电设备必须要执行厂家自定义鉴权。

3.9

线缆电子标签 cable electronic label

可以读取该线缆的属性:电源传输能力、数据传输能力等信息的芯片。

3.10

通路阻抗 path impedance

供电设备输出端到充电设备输入端这个路径上的阻抗。

3.11

融合快速充电系统 Universal fast charging specification

不同品牌的移动终端设备实现统一快速充电的融合解决方案。

3.12

UFCS 握手检测 UFCS handshake detection

UFCS 握手检测是指通过物理电平来识别 UFCS 握手的一个过程。

4 缩略语

下列缩略语适用于本文件。

CRC 循环冗余码校验 Cyclic Redundacy Check

D+ 数据线 1 Data+

D- 数据线 2 Data-

5 通用要求

移动终端融合快速充电技术规范(UFCS)中存在供电设备、充电设备和线缆三种类型的设备,设备之间通过 D+ 、D-通道以全双工方式通信。整体框架如图 1 所示。

图 1 整体框架

—物理层:充电协议实现的物理基础,控制数据的发送与接收、CRC 运算、插入/拔出检测、协议握手检测等,详细情况见本文第 7 章物理层。

—协议层:连通供电设备和充电设备,进行信息交互,详细情况见本文第 8 章协议层。

—应用层-充电设备端:充电协议选择、流程、调压策略等;应用层-供电设备端:功率调节,根

据充电策略调整供电设备的输出功率;详细情况见本文第 9 章应用层。

—功率输出/功率输入:功率输入输出电路。

—接口:至少应包含 VBUS 、D+ 、D-和 GND4 个引脚的硬件接口。

6 电气特性及时序要求

6.1 概述

本章节主要定义了通信的电平规则要求和阻抗规则要求,通过本章规则说明,可以保证协议通路的畅通及稳定。

6.2 电气特性

本协议以 D+ 、D-信号线作为通信信号线,对于 D+ 、D-的电平信息,本协议从供电设备侧、充电设备侧、线缆侧分别定义说明。

6.2.1 供电设备侧信号线电平规则

供电设备侧输入信号(D-)和输出信号(D+)的电气规范分别见表 1、表 2。

表 1 供电设备侧输入信号(D-)电气规范

表 2 供电设备侧输出信号(D+)电气规范

6.2.2 充电设备侧信号线电平规则

充电设备侧输入信号(D+)和输出信号(D-)的电气规范分别见表 3、表 4。

表 3 充电设备侧输入信号(D+)电气规范

表 4 充电设备侧输出信号(D-)电气规范

6.2.3 线缆电子标签信号线电平规则

初始状态下,D+ 、D-均为接收功能,此时电平规则见表 5。

表 5 线缆电子标签输入电气规则

收到数据后,需要发送数据,此时发送端电平规则如表 6 所示,具体如何转换角色见章节 7.2 所述。

表 6 线缆电子标签输出电气规则

6.3 阻抗规则要求

信号通路阻抗要求具体见表 7,包括 D+和 D-信号线阻抗、协议 IC 内部阻抗以及通路总阻抗。

表 7 信号通路阻抗规范

6.4 通信基本时序要求

D+ 、D-作为协议的信号线,对信号线的时序要求如图 2 所示,具体的参数指标见表 8。

图 2 信号线缆时序要求

表 8 信号线缆时序参数要求

6.5 其他要求

本文件定义的快充系统如图 3 所示,VBUS 两端压差要求≤500mV,GND 两端压差要求≤250mV, R1 和 R2 为线缆等效电阻。

图 3 VBUS 及 GND 端压差要求

7 物理层

7.1 概述

本章节主要定义了 UFCS 中设备连接的物理结构、设备握手检测、信令实现,以及基础数据帧结构等物理底层内容,为 UFCS 提供可靠的物理环境。

7.2 物理通道实现

本规范基于 D+D-数据通道进行通信,如图 4 所示。供电设备端 D+数据线为数据发送方、D-数据线为数据接收方;充电设备端 D+为数据接收方、D-为数据发送方;线缆端 D+D-数据线均支持数据发送与接收,初始状态均为数据接收方,在下述条件下,D+D-角色将发生变化:

图 4 物理通道实现框

a) 线缆电子标签初始状态下,当 D+接收到线缆检测指令时,D-引脚将切换为数据发送 TX ,D+引脚为数据接收 RX;

b) 线缆电子标签初始状态下,当 D-接收到线缆检测指令时,D+引脚将切换为数据发送 TX ,D-引脚切换为数据接收 RX;

c) 线缆电子标签初始状态下,当 D+D-同时接收到线缆检测指令时,D+引脚将切换为数据发送TX ,D-引脚为数据接收RX;

d) UFCS 模式下,当接收到硬件复位命令时,D+D-恢复至 RX 状态。

物理层的引脚描述见表 9。

表 9 通信引脚定义

7.3 快充协议握手检测

当供电设备和充电设备通过线缆连接时,检测供电设备为专有供电端口的设备后,充电设备启动快充协议握手检测,详细方案流程如图 5、图 6 和图7 所示。供电设备在专有供电模式下,持续检测充电设备是否启动 UFCS 握手检测。

供电设备处于专有充电模式时,持续检测 D-信号,一旦检测到充电设备在 D-上发送预定序列后,断开 D+D-,并在 tDataRoleSwitch 时间内将 D+D-引脚切换到 UFCS 模式,协议握手检测成功。

供电设备协议握手检测成功,将 D+D-引脚切换到 UFCS 模式后,若在 tWaitPing 时间内,未收到来自充电设备的指令,供电设备首先发送充电设备硬件复位命令,再主动恢复至初始状态。在恢复至初始状态的过程中,供电设备应避免 VBUS 掉电。

图 5 充电设备 UFCS 握手检测流程

充电设备在设定时间窗内检测到 D+上拉至高电平后,确认协议握手检测成功,在 tDataRoleSwitch时间内将 D+D-引脚切换到 UFCS 模式。充电设备在 tSendPing 时间内需向供电设备以设定的波特率发送 Ping 消息,并收到供电设备回复的 ACK 消息,充电设备后续可使用该波特率挡位与供电设备通信。

充电设备在握手检测第四信号开始时,启动对 D+信号高电平检测,若在规定时间窗内仍未检测到D+上拉至高电平,则此次握手检测失败,可在 tdetRetry 时间内重新启动握手检测,即从第四信号开始计时 11ms 后,21ms 内可重新启动握手检测,最多检测 3 次。其中,tDpDet 为充电设备对 Dp 检测的持续时间长度,tDpDet 应长于握手检测的最长时间。

图 6 供电设备端 UFCS 握手检测流程

图 7 UFCS 快充握手检测波形

充电设备尝试 3 次后,依旧未握手检测成功,充电设备侧 D+D-恢复到初始状态(高阻状态)。协议识别的时序参数设置见表 10。

表 10 协议识别时序特性

表 10 协议识别时序特性(续)

7.4 物理层通讯机制

7.4.1 数据帧结构

物理层的数据帧结构如图 8 所示。

图 8 数据帧结构

7.4.2 空闲状态

当总线处于空闲状态时,信号线处于逻辑“ 1 ”状态,表示当前线路上没有信息传送。后续图表中使用“I ”表示,数据帧之间 Idle 时间需大于等于 1 个数据位时间宽度。

7.4.3 开始位

发出一个逻辑“0 ”信号,表示传输字符的开始。后续图表中使用“S ”表示。

7.4.4 数据位

每一帧数据包含 8 位逻辑“0 ”或“ 1 ”,在总线上先发送 LSB,后发送 MSB。

7.4.5 结束位

它是一个字符数据的结束标志,用 1 位高电平来表示。后续图表中使用“E ”表示。

7.4.6 波特率

本规范中设备,需支持 115200bit/s 、57600bit/s 、38400bit/s3 个波特率基准挡位,其中 115200bit/s为缺省支持挡位。

在数据发送方发送数据包时,首先以设定波特率发送 Training 序列(0xAA),如图 9 所示,数据发送波特率误差不超过基准挡位的±10%,在同一个数据包内,波特率相对误差不超过±1%。

图 9 波特率 Training 字符

数据接收方接收数据包时,针对每个基准挡位波特率,波特率误差不超过±15%时,接收方需正常响应;当超过基准挡位的±20%时,判定波特率错误,不回复当前信号。

数据接收方通过对 Training 字符的计算可获得当前接收数据包的波特率挡位以及当前具体波特率值,在波特率挡位未重新改变之前,当前此具体波特率值用于后续数据包的接收,此波特率挡位用于后续数据包的发送。

在 UFCS 协议识别过程中,当发送方多次(≥3 次)发送 Ping 消息,却未接收到反馈信号(ACK或 NCK)时,发送方需主动尝试使用其他挡位波特率进行通信。在 UFCS 协议识别过程中和 UFCS 协议识别成功后,如果要切换波特率的话,发起方只用 Ping 消息通知对方切换波特率。如,充电设备以115200bit/s 波特率发送 Ping 消息给供电设备,重试多次后仍未接收到反馈信号,则充电设备可将波特率更换为 57600bit/s 重新发送 Ping 信号。若所有波特率挡位均尝试失败,数据发送方需主动发送硬件复位信号,退出 UFCS 模式。若接收设备接收到非 Ping 消息,且波特率挡位已改变,接收设备可不回复当前消息;若接收设备可正确识别当前数据,也可以在当前波特率挡位或上一个波特率挡位回复 ACK消息。

当数据接收方接收到其他挡位波特率 Ping 消息且 CRC 正确时,在后续消息发送时,应选择变更后的波特率发送消息。如充电设备与供电设备当前通信波特率为 115200bit/s,若供电设备接收到以57600bit/s 波特率发送的 Ping 消息,则供电设备后续应以 57600bit/s 波特率发送消息。

因为线缆电子标签与供电设备和充电设备的通信比较单一,为简化设计,线缆电子标签应该支持通过 Get_Cable_Info 消息切换波特率。线缆电子标签通过对 Training 字符的计算获得当前接收数据包的波特率挡位和具体的波特率值。如果计算得到的波特率挡位属于 115200bit/s 、57600bit/s 、38400bit/s 三个波特率基准挡位之一,线缆电子标签以计算得到的具体波特率值将数据包接收下来,否则终止当前数据包的接收。如果接收到的数据包是正确的 Get_Cable_Info 消息,线缆电子标签以计算得到的波特率挡位进行后续消息的回复,包括 ACK 消息和 Cable_Information 消息。

7.4.7 数据传输

7.4.7.1 发送

空闲状态时,线路处于高电平,当收到发送指令后,拉低 TX 线路一个数据位(1bit)的时间以启动通信,接着数据按低位到高位依次发送,数据发送完毕后,拉高 TX 线路一个数据位时间以停止发送,一帧数据发送完成。

一帧数据中包含 1bit 起始位、8bit 数据位、1bit 停止位。数据帧间IDLE 状态持续时间需要满足大于等于 1bit 宽度,时序要求如图 10 所示。

图 10 数据帧间时序要求

一个数据包包括多个数据帧。Tx 发送数据包之间的 IDLE 态需要满足大于等于 2ms,时序要求如图 11。

图 11 数据包间时序要求

7.4.7.2 接收

空闲状态时,线路处于高电平,当检测到线路的下降沿(高电平变为低电平)时说明线路有数据传输。按照约定的波特率从低位到高位接收数据,8 位数据接收完毕后,线路拉高,一帧数据发送完成。

一帧数据中包含 1bit 起始位、8bit 数据位、1bit 停止位。

为提高通信可靠性,增加数据帧超时保护功能。数据帧内,超过 tFrameReceive 时间未收到结束位,数据接收状态机需恢复到空闲状态,以重新接收新的数据包。数据帧之间,超过 tFrameReceive 时间未接收到下一帧数据,数据接收状态机需恢复到空闲状态,以重新接收新的数据包。数据帧内、帧间超时参数时序如图 12,参数定义见表 11。

图 12 数据帧内、帧间超时参数时序

表 11 数据帧内、帧间超时参数定义

7.5 循环冗余校验(CRC)

数据发送器会对消息头和消息主体数据进行循环冗余校验(CRC),得到一个字节 CRC 值,将其添加到每个数据包末尾,使用的多项式为:X8+X5+X3+1(0x29),CRC-8 算法见附录 A。

数据接收端需要计算接收的数据的循环冗余校验(CRC),并和数据包收到的循环冗余校验(CRC)字节进行对比。

7.6 数据包格式

7.6.1 控制消息

控制消息包由消息头、控制命令和 CRC 校验组成, 由高字节到低字节依次发送,格式如图 13所示。

图 13 控制消息数据包格式

7.6.2 数据消息

数据消息包由消息头、数据长度、数据和 CRC 校验组成,由高字节到低字节依次发送,格式如图14 所示。

图 14 数据消息数据包格式

7.6.3 厂家自定义消息

厂家自定义消息包由消息头、厂家识别码、数据信息和 CRC 校验位组成,由高字节到低字节依次发送。自定义消息数据包格式如图 15 所示。

图 15 自定义消息数据包格式

7.7 物理层消息应答机制

ACK、NCK 消息是对接收到消息(非 ACK、NCK 消息)进行 CRC 校验后自动回复的特殊控制消息,用于通知收到一个消息;针对接收到的消息回复 ACK/NCK 机制,存在下述两种方式。

方式 1:验证设备类型(消息头的设备类型是否是接收方的设备类型)和 CRC 校验:

a) 满足三个条件之一:收到 ACK、收到 NCK 或验证设备类型不通过,不回复消息;

b) 同时满足条件:收到非 ACK/NCK 消息、验证设备类型通过和CRC 验证通过,则发送ACK;

c) 同时满足条件:收到非 ACK/NCK 消息、验证设备类型通过和 CRC 验证不通过,则发送 NCK;方式 2:验证设备类型(消息头的设备类型是否是接收方的设备类型)、消息类型、数据长度和 CRC

校验:

a) 满足五个条件之一:收到 ACK、收到 NCK、验证设备类型、消息类型或数据长度不通过,不回复消息;

b) 同时满足条件:收到非 ACK/NCK 消息,验证设备类型通过、消息类型和数据长度验证通过, CRC 验证通过,则发送 ACK;

c) 同时满足条件:收到非 ACK/NCK 消息,验证设备类型通过、消息类型和数据长度验证通过, CRC 验证不通过,则发送 NCK;

以上两种方式均可使用,针对消息数据收发异常场景,两种处理方式导致的不同行为,参考章节

8.7 消息交互和冲突处理。

7.8 总线冲突

线缆电子标签 D+D-引脚缺省为 RX 状态,不主动发送数据,当供电设备和充电设备完成快充协议识别后,缺省由充电设备发起线缆识别流程,总线所有权如图 16 所示,线缆检测流程如图 18,具体步骤包括:

a) 充电设备发送 Start_Cable_Detect 消息给供电设备,供电设备接收到该消息后,回复 ACK 和Accept 消息。供电设备在收到充电设备应答 Accept 消息的 ACK 消息后,停止发送数据,将

TX 设置为高阻态,启动 RestartTransTimer;

b) 充电设备收到 Accept 后,屏蔽硬件复位功能;

c) 充电设备发送 Get_Cable_Info 指令给线缆,发送完毕后启动 SenderResponseTimer;

d) 线缆接收到 Get_Cable_Info 指令后,在 tDataRoleSwitch 时间内将数据引脚切换 D-为 RX ,D+为 TX,回复 ACK 指令给充电设备;

e) 线缆回复 Cable_Information 消息给充电设备,启动 CableTransTimer;

f) 充电设备接收到 Cable_Information 消息,发送硬件复位命令给线缆,线缆恢复至初始状态;

g) 充电设备发送 End_Cable_Detect 消息给供电设备,供电设备接收到该消息后,TX 恢复为上拉状态,恢复正常通信功能,并在 40ms 内回复 ACK 或 NCK 消息给充电设备;

h) 充电设备接收到 ACK 消息后,恢复硬件复位功能;

i) 线缆识别成功,进入 UFCS 快充流程。

如果 SenderResponseTimer 溢出后,充电设备仍未接收到 Cable_Information 消息,则应退出 UFCS线缆识别流程,尝试其他方式识别线缆,具体步骤如下:

a) 充电设备发送硬件复位命令给线缆,使线缆恢复至初始状态;

b) 充电设备发送 End_Cable_Detect 消息给供电设备,供电设备接收到该消息后,TX 恢复为上拉状态,恢复正常通信功能,并在 40ms 内回复 ACK 或 NCK 消息给充电设备;

c) 充电设备尝试其他方式识别线缆;

d) 识别成功,进入 UFCS 快充流程,若充电设备识别线缆失败,充电设备发送 Detect_Cable_Info消息给供电设备,切换至供电设备获取线缆信息,总线所有权如图 17 所示,线缆识别流程如图 19 所示。

图 16 总线所有权示意(充电设备检测线缆)

图 17 总线所有权示意(供电设备检测线缆)

图 18 充电设备线缆电子标签识别流程

图 19 供电设备线缆电子标签识别流程

7.9 硬件复位

当协议识别成功后,如果数据总线出现异常,必须有相应机制来复位总线及总线上的设备。通过将需复位设备的数据接收总线拉低设定时间以上来实现对设备的硬件复位,硬件复位命令定义如表 12,复位信号波形如图 20、图 21 和图 22 所示。线缆电子标签、通过握手检测的供电设备和充电设备,在接收到硬件复位命令时,必须复位相关状态至初始状态。

当设备执行发送硬件复位命令时,如果遇到上一个命令序列正在运行中,会在上一个命令序列结束后,复位命令才开始下发。

下列这些情况,供电设备和充电设备需发送硬件复位命令:

a) 供电设备或充电设备发送 Soft_Reset 消息,未能在tACKReceive 时间内接收到对方回复的ACK或 NCK 消息,并且重试了nMsgRetryCount 次后仍未接收到对方回复的ACK 或 NCK 消息或者接收到对方回复 NCK 消息;

b) 供电设备或充电设备发送 Soft_Reset 消息,在 tACKReceive 时间内接收到对方回复的 NCK 消息,并且重试了 nMsgRetryCount 次后仍接收到对方回复的 NCK 消息或者未接收到对方回复的 ACK 或 NCK 消息;

c) 供电设备设置的看门狗定时器溢出;

d) 充电设备向供电设备发出 Request 消息,接收到供电设备回复 Accept 消息。之后,如果在tPowerSupply 内,没有接收到供电设备回复 Power_Ready 消息;

e) 其他通信异常或设备工作异常的情况。

表 12 复位信号定义

图 20 线缆硬件复位命令

图 21 供电设备硬件复位命令

图 22 充电设备硬件复位命令

8 协议层

8.1 概述

本章节主要定义了设备间通信的消息格式。根据设备及设备间信息交互的需求,协议层定义了 3种消息类型,并定义了每种消息类型的具体格式。协议层定义具体的消息,以及各消息的发送、响应和执行顺序。为了保证消息传输的可靠性,协议层还定义了消息发送和接收的处理状态和时序,以及异常的处理流程。协议层为应用层提供命令和数据的发送接口,并将接收到的命令和数据传递给应用层处理。

8.2 消息

消息是供电设备、充电设备和线缆电子标签之间信息交互的基础单元。

8.2.1 消息格式

消息的格式见图 23。

图 23 消息格式

a) 消息头:长度为 2 个字节。在消息头中,主要用于标识消息的类型,UFCS 协议的版本,以及寻址。详情参考 8.2.2。

b) 消息主体:存放该消息具体的命令和数据,长度为 1~61字节。

c) CRC:对消息头和消息主体两部分的数据进行 CRC 计算。使用 CRC-8 算法,得到一个字节的CRC 值。CRC-8 算法见附录 A。

8.2.2 消息头

消息头的长度为 2 个字节。发送的时候,先发送高字节(bit15~bit8),再发送低字节(bit7~bit0)。定义见表 13。

表 13 消息头定义

a) 设备地址:设备地址用于标识消息的接收者,设备据此判断是否接收和处理该消息。

b) 消息编号:设备在接收消息的时候,不判断消息编号是否有变化。建议设备在发送消息时,消息编号都设置为 0 ,回复跟随。

c) 协议版本编号:UFCS 的协议版本,如版本 V1.01,对应版本编号为 010001b;为保证兼容性,低 2bit 指代大版本 V1,中间 2bit 指代中版本 0,高 2bit 指代小版本 1。

d) 消息类型:定义协议支持的几种消息类型。

8.2.3 控制消息

控制消息的结构如图 24 所示。

图 24 控制消息结构

控制消息的消息头中,消息类型必须为 000b,其后紧跟一个字节的控制命令。控制命令的定义见表 14。

表 14 控制命令定义

8.2.3.1 Ping 消息

Ping 消息用于侦测目标设备是否存在,也可以用于测试传输是否正常。供电设备和充电设备均可发送 Ping 消息。供电设备、充电设备和线缆电子标签接收到 Ping 消息后,如果 CRC 校验正确,则应在 tACKReceive 时间内回复 ACK 消息;如果 CRC 校验错误,则应在 tACKReceive 时间内回复 NCK消息。

Ping 消息的发送方,如果在 tACKReceive 时间内未接收到对方回复 ACK 消息或 NCK 消息,可以启动重发。重发次数不受 MsgRetryCounter 计数器的限制。

8.2.3.2 ACK 消息

供电设备、充电设备和线缆电子标签接收到一条发给它的消息后,首先对消息进行 CRC 校验。如果 CRC 校验通过,则延时 tACKtransmit 后回复一条 ACK 消息给对方。ACK 消息的消息头中的消息编号,应与其响应的消息的消息头中的消息编号一致。

消息的发送方,在发送完一条消息的最后一个 bit 后,启动 ACKReceiveTimer。如果在 tACKReceive时间内接收到 ACK,则判断其发送的消息已被对方正确接收到,停止 ACKReceiveTimer。

供电设备、充电设备和线缆电子标签接收到 CRC 正确的 ACK 消息,无须再回复 ACK 消息。供电设备、充电设备和线缆电子标签接收到 CRC 错误的 ACK 消息,无须回复 NCK 消息。

8.2.3.3 NCK 消息

供电设备、充电设备和线缆电子标签接收到一条发给它的消息后,首先对消息进行 CRC 校验。如果 CRC 校验未通过,则延时 tACKtransmit 后回复一条 NCK 消息给对方。NCK 消息的消息头中的消息编号,应与其响应的消息的消息头中的消息编号一致。

消息的发送方,在发送完一条消息的最后一个 bit 后,启动 ACKReceiveTimer。如果在 tACKReceive时间内接收到 NCK,则判断其发送的消息已被对方接收,但数据发生错误。此时,发送方应立即重发,重发完毕后复位并重启 ACKReceiveTimer。

供电设备、充电设备和线缆电子标签接收到 CRC 正确的 NCK 消息,无须再回复 ACK 消息。供电设备、充电设备和线缆电子标签接收到 CRC 错误的 NCK 消息,无须回复 NCK 消息。

8.2.3.4 Accept 消息

下列情况,消息的接收方应回复一条 Accept 消息:

供电设备接收到充电设备的 Request 消息,同意充电设备请求的输出电压和电流,并接下来调整到

电设备请求的输出电压和电流。

a) 供电设备接收到充电设备的 Detect_Cable_Info 消息,同意由它来做线缆信息识别。

b) 充电设备接收到供电设备的 Detect_Cable_Info 消息,同意由它来做线缆信息识别。

c) 供电设备接收到充电设备的 Start_Cable_Detect 消息,同意停止发送命令和数据,以释放 TX总线。

d) 充电设备接收到供电设备的 Start_Cable_Detect 消息,同意停止发送命令和数据,以释放 TX总线。

e) 供电设备接收到充电设备的 Config_Watchdog 消息,同意将看门狗的溢出时间调整到消息指定

的时间。

f) 供电设备、充电设备或线缆电子标签接收到 Verify_Request 消息,同意进行鉴权。

8.2.3.5 Soft_Reset 消息

下述情况,供电设备和充电设备应该发送 Soft_Reset 消息:

a) 供电设备或充电设备重发消息nMsgRetryCount 次后,仍未接收到对方回复ACK 或NCK 消息、或者接收到了对方回复 NCK 消息;

b) 供电设备、充电设备和线缆电子标签接收到 Soft_Reset 消息后,不退出UFCS 模式,也不改变当前的工作状态。但是,供电设备、充电设备和线缆电子标签应该使接收状态机和发送状态机恢复初始状态,复位各定时器和计数器,清空发送和接收缓存,终止未完的消息处理流程。

8.2.3.6 Power_Ready 消息

供电设备接收到充电设备的 request 信息,接受充电设备的请求,回复 Accept 消息,并将输出电压、电流或功率调整到 Request 消息请求的数值后,发送 Power_Ready 消息给充电设备。

供电设备回复 Accept 消息后,必须在 tPowerSupply 时间内将输出电压、电流或功率调整到Request消息请求的数值,并回复 Power_Ready 消息给充电设备。

8.2.3.7 Get_Output_Capabilities 消息

UFCS 快充识别完成后,充电设备可以向供电设备发送 Get_Output_Capabilities 消息,获取供电设备的电压和电流输出能力。

供 电 设 备 接 收 到 Get_Output_Capabilities 消 息 后 , 应 该 在 tReceiverResponse 时 间 内 回 复Output_Capabilities 消息。

8.2.3.8 Get_Source_Info 消息

UFCS 快充识别完成后,充电设备可以向供电设备发送 Get_Source_Info 消息,获取供电设备当前的工作状态信息,包括输出电压、输出电流、内部温度等。

供电设备接收到 Get_Source_Info 消息后,应该在 tReceiverResponse 时间内回复 Source_Information消息。

8.2.3.9 Get_Sink_Info 消息

UFCS 快充识别完成后,供电设备可以向充电设备发送 Get_Sink_Info 消息,获取充电设备当前的工作状态信息,包括电池电压、充电电流、内部温度等。

充电设备接收到 Get_Sink_Info 消息后,应该在 tReceiverResponse 时间内回复 Sink_Information消息。

8.2.3.10 Get_Cable_Info 消息

UFCS 快充识别完成后,供电设备和充电设备可以向线缆电子标签发送 Get_Cable_Info 消息,获取线缆的设备信息和传输能力,包括线缆的阻抗、线缆的最大承载电压和最大承载电流。

线 缆 电 子 标 签 接 收 到 Get_Cable_Info 消 息 后 , 应 该 在 tReceiverResponse 时 间 内 回 复

Cable_Information 消息。

8.2.3.11 Get_Device_Info 消息

UFCS 快充识别完成后,供电设备和充电设备可以分别向对方请求获取其硬件和软件相关的信息。

供电设备和充电设备向目标设备发送 Get_Device_Info 消息,目标设备接收到 Get_Device_Info 消息后,应该在 tReceiverResponse 时间内回复 Device_Information 消息。

8.2.3.12 Get_Error_Info 消息

UFCS 快充识别完成后,供电设备和充电设备可以分别向对方请求获取其一些异常状态信息。异常状态信息包括电压异常、电流异常、温度异常等信息。

供电设备和充电设备向目标设备发送Get_Error_Info 消息,目标设备接收到Get_Error_Info 消息后,应该在 tReceiverResponse 时间内回复 Error_Information 消息。

8.2.3.13 Detect_Cable_Info 消息

充电设备无法与线缆电子标签通信的话,可以向供电设备发送 Detect_Cable_Info 消息,命令供电设备与线缆电子标签通信。供电设备获取到线缆电子标签的信息后,将该信息返回给充电设备。供电设备如果能正常获取到线缆电子标签的信息,则应该在 tCableInfoResponse 时 间 内(从接 收 到Detect_Cable_Info 消息开始计时)向充电设备发送 Cable_Information 消息,并且该 Cable_Information消息中的信息,即是供电设备读取到的线缆电子标签的信息。供电设备如果不能读取到线缆电子标签的信息,则仍然在 tCableInfoResponse 时间内发送 Refuse 消息给充电设备,Refuse 的拒绝理由是 0x02。

供电设备也可以向充电设备发送 Detect_Cable_Info 消息,命令充电设备与线缆电子标签通信,充电设备获取到线缆电子标签的信息后,将该信息返回给供电设备。充电设备如果能正常获取到线缆电子标签的信息,则应该在 tCableInfoResponse 时间内(从接收到 Detect_Cable_Info 消息开始计时)向供电设备发送 Cable_Information 消息,并且该 Cable_Information 消息中的信息,即是充电设备读取到的线缆电子标签的信息。充电设备如果不能读取到线缆电子标签的信息,则在 tCableInfoResponse 时间内发送 Refuse 消息给供电设备,Refuse 的拒绝理由是 0x02。

8.2.3.14 Start_Cable_Detect 消息

进入 UFCS 快 充 后 , 充 电 设 备 需 要 与 线 缆 电 子 标 签 通 信 前 , 必 须 先 向 供 电 设 备 发 送Start_Cable_Detect 消息,命令供电设备释放 TX 总线。供电设备接收到 Start_Cable_Detect 消息后,如果同意释放 TX 总线,则回复 Accept 消息。供电设备回复 Accept 消息后,释放 TX 总线,启动RestartTransTimer。之后,供电设备如果在 tRestartTrans 时间内仍没有接收到 End_Cable_Detect 消息,则强制恢复与充电设备的通信。

同理,进入 UFCS 快充后,供电设备需要与线缆电子标签通信前,也必须先向充电设备发送Start_Cable_Detect 消息,命令充电设备释放 TX 总线。充电设备接收到 Start_Cable_Detect 消息后,如果同意释放 TX 总线,则回复 Accept 消息。充电设备回复 Accept 消息后,释放 TX 总线启动RestartTransTimer。之后,充电设备如果在 tRestartTrans 时间内仍没有接收到 End_Cable_Detect 消息,则强制恢复与供电设备的通信。

如果供电设备发送的 Output_Capabilities 消息中存在大于 6.5A 的最大输出电流,那么供电设备应支持 TX 总线释放功能。该情况下,供电设备接收到 Start_Cable_Detect 消息,回复 ACK 消息后,应再回复 Accept 消息,并释放 TX 总线。

如果充电设备向供电设备请求大于 6.5A 的充电电流,则充电设备应支持 UFCS 线缆识别功能。在该情况下,充电设备发送 Request 消息前,应完成线缆识别,其中包括主动向供电设备发送Start_Cable_Detect 消息。

8.2.3.15 End_Cable_Detect 消息

充电设备完成了与线缆电子标签的通信,或者由于异常退出了与线缆电子标签的通信后,必须向供电设备发送 End_Cable_Detect 消息,告知供电设备可以重新使用 D+和 D-总线通信。供电设备接收到End_Cable_Detect 消息后,恢复与充电设备的正常通信。

同理,供电设备完成了与线缆电子标签的通信,或者由于异常退出了与线缆电子标签的通信后,也必须向充电设备发送 End_Cable_Detect 消息,告知充电设备可以重新使用D+和 D-总线通信。充电设备接收到 End_Cable_Detect 消息后,恢复与供电设备的正常通信。

8.2.3.16 Exit_UFCS_Mode 消息

充电设备可以向供电设备发送 Exit_UFCS_Mode 消息,命令供电设备退出UFCS 快充模式。供电设备接收到 Exit_UFCS_Mode 消息后,退出UFCS 模式,恢复到初始状态。

供电设备也可以向充电设备发送 Exit_UFCS_Mode 消息,命令充电设备退出UFCS 快充模式。充电设备接收到 Exit_UFCS_Mode 消息后,退出 UFCS 模式,恢复到初始状态。

8.2.3.17 Get_Sink_Info_Extended 消息

UFCS 快 充 协 议 识 别 成 功 , 并 进 入 UFCS 快充后,供电设备可 向 充电设备发送 Get_ Sink_Info_Extended 消息,尝试获取充电设备更多的工作状态信息,包括最大充电功率、电池电量等。

充电设备接收到 Get_Sink_Info_Extended 消息,并回复 ACK 消息后,如果支持该消息,则应在tReceiverResponse 时间内回复 Sink_Information_Extended 消息;否则,应在 tReceiverResponse 时间内回复 Refuse 消息,拒绝理由是 0x02。

8.2.3.18 PowerRole_Switch 消息

UFCS 快充识别完成后, 对于既有供电能力, 又有充电能力的两台设备, 可以 向对方发送PowerRole_Switch 消息,完成供电设备和充电设备的角色切换。

供电设备向充电设备发送 PowerRole_Switch 消息,请求充电设备转换为供电设备,向其提供电源并运行 UFCS 快充协议。充电设备接收到PowerRole_Switch 消息后,如果同意转换,则回复 Accept 消息,并转换为供电设备;如果不同意转换,则回复 Refuse 消息,拒绝理由是 0x02;如果由于某些原因暂时不能切换,稍后可能支持切换,则回复 Refuse 消息,拒绝理由是 0x03。供电设备接收到 Accept消息后,转换为充电设备。

充电设备向供电设备发送 PowerRole_Switch 消息,请求供电设备转换为充电设备。供电设备接收到 PowerRole_Switch 消息后,如果同意转换,则回复 Accept 消息,并转换为充电设备;如果不同意转

换,则回复 Refuse 消息,拒绝理由是 0x02;如果由于某些原因暂时不能切换,稍后可能支持切换,则回复 Refuse 消息,拒绝理由是 0x03。充电设备接收到 Accept 消息后,转换为供电设备。

8.2.4 数据消息

数据消息的结构如图 25 所示。

图 25 数据消息结构

数据消息的消息头中,消息类型必须为 001b。其后紧跟一个字节的命令,用以区分不同的数据消息。数据长度字段根据其后的数据区域的具体长度来设置。数据消息的命令见表 15。

表 15 数据消息命令

8.2.4.1 Output_Capabilities 消息

Output_Capabilities 消息的结构见图 26。

图 26 Output_Capabilities 消息结构

命令:设置为 Output_Capabilities 消息的命令对应的编号。

数据长度:一条 Output_Capabilities 消息至少有一种输出模式,最多可以包括 7 种输出模式。数据长度字段的值,是根据输出模式的数量计算得到。每种输出模式为 8 个字节,那么n 种输出模式就是8×n 字节,而且n≤7。

输出模式:输出模式用于表示供电设备的功率输出方式。在可编程输出模式中,供电设备的输出电压会被配置为一个范围(包括输出电压的上限和下限);供电设备的输出电流也会被配置为一个范围(包括输出电流的上限和下限);此外,供电设备还必须选择其支持的电压和电流调节步进。在固定电压输出模式中,供电设备的输出电压配置为一个固定值;供电设备的输出电流可以设置为一个固定值,也可以配置为一个范围(包括输出电流的上限和下限);当电流配置为一个范围的时候,供电设备必须选择其支持的电流调节步进。

供电设备至少要支持一种输出模式,最多可以支持 7 种输出模式。输出模式定义见表 16。输出模式编号用于对 Output_Capabilities 消息中的一个或多个输出模式进行编号。Output_Capabilities 消息中的数据长度字段后的首个输出模式,其输出模式编号为 1,紧跟其后的各个输出模式,输出模式编号依次加 1。输出模式 n(7≥n>1)的最小输出电压应等于输出模式 n−1 的最大输出电压。发送 Output_Capabilities消息时,依次发送输出模式 1 至输出模式 n。每种输出模式,先发送高字节,再发送低字节。

表 16 输出模式定义

8.2.4.1.1 固定电压输出模式

当输出模式中的最大输出电压和最小输出电压被设置为相同的电压值,该输出模式表示的是固定电

压输出模式。

a) 在固定电压输出模式中,电流调节步进若设置为 111b,则表明该固定电压输出模式的最大输出电流是不可以请求调节的。工作于此固定电压输出模式时,供电设备输出的电流不超过输出模式中标明的最大输出电流值。在这种情况下,输出模式中的电压调节步进和最小输出电流字段将失效,默认可设置为 0。比如,供电设备的某一固定电压输出模式是 10V5A,那么该输出模式配置如下。

b) 在固定电压输出模式中,电流调节步进若设置为表 16 定义的000b~100b 这五种有效数值,则表明该固定电压输出模式的最大输出电流是可以请求调节的。如此,最小输出电流和最大输出电流构成了供电设备的恒流能力区间。充电设备可以通过 Request 消息请求一个供电设备将其恒流点设置为恒流能力区间内的某一个数值。供电设备的实际输出电流将不超过此请求的恒流值。在这种情况下,输出模式中的电压调节步进字段将失效,默认可设置为 0。比如, 供电设备的某一固定电压输出模式是 10V(2A~5A),电流调节步进为 40mA,那么该输出模式配置如下。

8.2.4.1.2 可编程输出模式

当输出模式中的最大输出电压和最小输出电压被设置为不同的电压值,该输出模式表示的是可编程输出模式。

在可编程输出模式,最大输出电压应该大于最小输出电压,最大输出电流应该大于或等于最小输出电流。供电设备根据自身能力,设置电流调节步进和电压调节步进。

例如,供电设备的某一可编程输出模式是:电压 5.5V~11V,电流 0.5A~5A,电流调节步进 30mA,电压调节步进 20mV。那么该输出模式配置如下。

8.2.4.1.3 输出模式设置规则

如果 Output_Capabilities 消息中既有固定电压输出模式又有可编程输出模式,那么所有固定电压输出模式应该放置在所有可编程输出模式前。

当有多个固定电压输出模式时,在 Output_Capabilities 消息中应该依据输出电压的大小编排这些输出模式。输出电压小的固定输出模式靠前,输出电压大的固定输出模式靠后,并依次分配输出模式编号。

当有多个可编程输出模式时,在 Output_Capabilities 消息中应该依据最大输出电压的大小编排这些输出模式。最大输出电压小的可编程模式靠前,最大输出电压大的可编程输出模式靠后,并依次分配输出模式编号。

当有多个可编程输出模式时,可编程输出模式 n(7≥n>1)的最小输出电压应等于可编程输出模式 n-1 的最大输出电压。供电设备的所有可编程输出模式的电压输出区间,必须可以拼接成一个连续的电压输出范围,以表示供电设备能够提供的整个可编程输出电压范围。比如,供电设备只有两个相邻的可编程输出模式 1 和 2,其输出电压区间分别是 3.4V~5.5V 和 5.5V~11V,那么供电设备完整的可编程输出电压范围是 3.4V~11V。如果这两个可编程输出模式的输出电压区间分别是 3.4V~5V 和 5.5V~ 11V,可编程输出模式 2 的最小输出电压不等于可编程输出模式 1 的最大输出电压,导致不能构成一个连续的电压输出范围,这种情况是不允许的。

供电设备对其整个可编程电压输出范围的定义和划分,必须符合表 41 的要求。根据供电设备的额定功率,在表 41 中查找供电设备必须支持的电压挡位和可选择支持的电压挡位,结合供电设备的实际电压和电流输出能力,最终确定供电设备的整个可编程电压输出范围。确定供电设备的整个可编程电压输出范围后,再根据供电设备在不同电压区间的电流输出能力差异,划分成一个或多个可编程输出模式。可以用一个可编程输出模式表示多个电压挡位;一个电压挡位也可以划分成一到三个可编程输出模式。

示例1:供电设备的额定功率时20W,根据表41,应支持5V可编程挡位。供电设备在5V可编程挡位的电压区间内,最大输出电流和最小输出电流分别是3A和0.5A。 那么, 供电设备只设置一个可编程输出模式, 其Output_Capabilities消息的输出模式编排如下。

示例2:供电设备的额定功率是33W,根据表41,必须支持10V可编程挡位。此外, 供电设备还选择支持5V可编程挡位的5V~5.5V这个区间。那么供电设备的整个可编程电压输出范围是5V~11V。

a) 如果供电设备在其整个可编程电压输出范围(5V~11V)内,最大输出电流均是 3A,那么,供电设备可只用一个可编程输出模式表示,其 Output_Capabilities 消息的输出模式编排如下。

b) 如果供电设备在不同的电压区间有不同的最大输出电流能力,比如电压区间 5V~5.5V 时最大输出电流是 4A,电压区间 5.5V~11V 是 3A,那么需要用两个可编程输出模式表示,其Output_Capabilities 消息的输出模式编排如下。

输出模式编号 :1

电流调节步进 :010b

电压调节步进:1b

最大输出电压 :5.5V

最小输出电压:5V

最大输出电流 :4A

最小输出电流 :0.5A

输出模式编号:2

电流调节步进:010b

电压调节步进:1b

最大输出电压:11V

最小输出电压:5.5V

最大输出电流:3A

最小输出电流:0.5A

示例3:供电设备的额定功率是80W,根据表41,应支持10V可编程挡位。此外,供电设备还选择支持5V可编程挡位,以及20V可编程挡位的11V~20V这个区间。那么供电设备的整个可编程电压输出范围是3.4V~20V。

a) 如果供电设备在电压区间 3.4V~5.5V 时最大输出电流是 6A,电压区间 5.5V~11V 是 5A,电压区间 11V~20V 是 4A,那么需要用三个可编程输出模式表示,其 Output_Capabilities 消息的输出模式编排如下。

输出模式编号:1

电流调节步进:010b

电压调节步进:1b

最大输出电压:5.5V

最小输出电压:3.4V

最大输出电流:6A

最小输出电流:0.5A

输出模式编号 :2

电流调节步进 :010b

电压调节步进 :1b

最大输出电压 :11V

最小输出电压 :5.5V

最大输出电流 :5A

最小输出电流 :0.5A

输出模式编号 :3

电流调节步进 :010b

电压调节步进 :1b

最大输出电压 :20V

最小输出电压 :11V

最大输出电流 :4A

最小输出电流 :0.5A

b) 供电设备根据其电流输出能力,可以对整个可编程电压输出范围进一步细分,比如电压区间

3.4V~5.5V 时最大输出电流是 6A,电压区间 5.5V~8V 是 5.5A,电压区间 8V~12V 是 5A,电压区间 12V~15V 是 4.5A,电压区间 15V~20V 是 4A,那么需要用五个可编程输出模式表示,其 Output_Capabilities 消息的输出模式编排如下。

c) 如果在 b)中已有的五个可编程输出模式的基础上,增加 9V5A 和 15V(1A~4A)两个固定电压输出模式,其 Output_Capabilities 消息的输出模式编排如下。

8.2.4.2 Request 消息

Request 消息的结构如图27 所示。

图 27 Request 消息结构

命令:设置为 Request 消息的命令对应的编号。

数据长度:Request 消息的请求数据只有 8 个字节,因此数据长度设置为 8。请求数据的结构见表 17。发送请求数据时,先发送高字节,再发送低字节。

表 17 请求数据结构

在请求数据的结构中,输出模式编号用于指明请求供电设备应用 Output_Capabilities 消息中的哪种输出模式。

如果请求的是某个固定电压输出模式,那么,请求输出电压字段填入该固定电压输出模式中的最大输出电压值。如果该固定电压输出模式的电流调节步进为 111b,那么请求输出电流字段填入该固定电压输出模式中的最大输出电流值;如果该固定电压输出模式的电流调节步进为输出模式中定义的除111b 以外的其他有效数值,那么请求输出电流字段可以在最大输出电流和最小输出电流之间(包括最大输出电流和最小输出电流)选择一个输出电流值。

如果请求的是某个可编程输出模式,在该可编程输出模式的最大输出电压和最小输出电压之间(包括最大输出电压和最小输出电压),请求供电设备输出一个确定的电压值;并在该可编程输出模式的最大输出电流和最小输出电流之间(包括最大输出电流和最小输出电流),请求供电设备输出一个确定的电流值。

充电设备请求供电设备输出的电压和电流,不得超出供电设备的 Output_Capabilities 消息中对应输出模式标识的电压和电流范围,也不得超出线缆的承载能力。线缆的承载能力,由线缆电子标签回复的Cable_Information 消息中的最大承载电压和最大承载电流确定。如果无法读取线缆电子标签,充电设备

应根据 9.6.3 章节来约束请求的电流数值。

示例 1,供电设备发送的 Output_Capabilities 消息的输出模式如下:

a) 充电设备请求供电设备按照输出模式 1 输出固定电压9V 和限定最大输出电流5A,则其Request消息的请求数据格式如下。

b) 充电设备请求供电设备按照输出模式 2 输出固定电压 15V,限定最大输出电流 3.5A,则其Request 消息的请求数据格式如下。

c) 充电设备请求供电设备按照输出模式 3 输出可编程电压和可编程电流—电压 5. 1V 和电流3A,则其 Request 消息的请求数据格式如下。

8.2.4.3 Source_Information 消息

Source_Information 消息的结构如图 28 所示。

图 28 Source_Information 消息结构

命令:设置为 Source_Information 消息的命令对应的编号。

数据长度:Source_Information 消息的状态信息有 8 个字节,因此数据长度设置为 8。状态信息的结构见表 18。发送状态信息时,先发送高字节,再发送低字节。

表 18 状态信息结构

表 18 状态信息结构(续)

8.2.4.4 Sink_Information 消息

Sink_Information 消息的结构如图 29 所示。

图 29 Sink_Information 消息结构

命令:设置为 Sink _Information 消息的命令对应的编号。

数据长度:Sink_Information 消息的状态信息有 8 个字节,因此数据长度设置为 8。状态信息的结构见表 19。发送状态信息时,先发送高字节,再发送低字节。

表 19 状态信息结构

8.2.4.5 Cable_Information 消息

Cable_Information 消息的结构如图 30 所示。

图 30 Cable_Information 消息结构

命令:设置为 Cable_Information 消息的命令对应的编号。

数据长度:Cable_Information 消息的线缆信息有 10 个字节,因此数据长度设置为 10。

线缆信息结构见表 20。厂家识别码应填入线缆品牌所属厂家的识别码。厂家自定义识别码应填入线缆生产厂家识别码,或者线缆电子标签芯片厂家识别码,或其他有关的厂家识别码,用于辅助识别和区分线缆。线缆品牌所属厂家自行确定厂家自定义识别码的内容。发送状态信息时,先发送高字节,再发送低字节。

表 20 线缆信息结构

8.2.4.6 Device_Information 消息

Device_Information 消息的结构如图 31 所示。

图 31 Device_Information 消息结构

命令:设置为 Device_Information 消息的命令对应的编号。

数据长度:Device_Information 消息的设备信息有 8 个字节,因此数据长度设置为 8。

设备信息结构见表 21。厂家识别码应填入供电设备或充电设备品牌所属厂家的识别码。厂家自定义识别码应填入供电设备或充电设备的生产厂家识别码、方案或主控芯片厂家识别码,或者其他有关的厂家识别码,用于辅助识别和区分设备。厂家自定义识别码、设备硬件版本号和设备软件版本号的格式和内容均由厂家自行确定,完整信息应确保可以对应设备具体型号、软硬件版本。发送设备信息时,先发送高字节,再发送低字节。

表 21 设备信息结构

8.2.4.7 Error_Information 信息

Error_Information 消息的结构如图 32 所示。

图 32 Error_Information 消息结构

命令:设置为 Error_Information 消息的命令对应的编号。

数据长度:Error_Information 消息的异常信息有 4 个字节,因此数据长度设置为4。异常信息的结构见表 22。发送异常信息时,先发送高字节,再发送低字节。

表 22 异常信息结构

当供电设备发生表中的异常时,供电设备应将异常信息的相关的 bit 置 1。当充电设备发生表中的异常时,充电设备可以将异常信息的相关的 bit 置 1,可通过发送 Error_Information 消息通知供电设备。

供电设备和充电设备可以通过发送 Get_Error_Info 消息,获知对方的异常状态信息。供电设备和充电设备接收到 Get_Error_Info 消息后,应该在 tReceiverResponse 时间内回复 Error_Information 消息。

8.2.4.8 Config_Watchdog 消息

Config_Watchdog 消息的结构如图 33 所示。

图 33 Config_Information 消息结构

命令:设置为 Config_Watchdog 消息的命令对应的编号。

数据长度:Config_Watchdog 消息的配置信息有 2 个字节,因此数据长度设置为2。配置信息的结构见表 23。发送配置信息时,先发送高字节,再发送低字节。

表 23 配置信息结构

供电设备的看门狗定时器溢出时间默认为 1 秒。充电设备可以通过 Config_watchdog 消息配置供电

设备的看门狗溢出时间。如果在消息中配置的看门狗定时器溢出时间为 0 ,则将关闭看门狗功能。

供电设备与充电设备 UFCS 协议识别成功后,即启动看门狗。每次接收到充电设备的一条消息,供电设备均应对看门狗进行清零。如果供电设备需要回复接收到的消息(回复 ACK 消息除外),则从接收到消息至发送完毕回复消息期间,暂停看门狗。发送完毕回复消息后,重启看门狗。比如,供电设备接收到充电设备的 Request 消息,立即对看门狗清零,并暂停看门狗;等到发送完毕 Power_Ready 消息后,重启看门狗。

供电设备的看门狗定时器溢出后,将触发供电设备硬件复位恢复到初始状态。

8.2.4.9 Refuse 消息

Refuse 消息的结构见图 34。

图 34 Refuse 消息结构

命令:设置为 Refuse 消息的命令对应的编号。

数据长度:Refuse 消息的反馈信息有 4 个字节,因此数据长度设置为4。

反馈信息的结构见表 24。发送反馈信息时,先发送高字节,再发送低字节。

表 24 反馈信息结构

供电设备、充电设备或线缆电子标签,接收到某条消息后,如果由于表 24 所列出的某个原因,不能响应或执行消息所请求的行为,应该在 tReceiverResponse 时间内回复 Refuse 消息给对方,并在 Refuse消息中填入其拒绝的消息的消息编号、消息类型、命令编号,以及拒绝原因。

供电设备、充电设备和线缆电子标签接收到一条 CRC 正确的消息,当消息中出现以下情形时,其回复 Refuse 消息中的拒绝原因是 0x01(无法识别的命令或数据):

a) 使用 7.7 描述的消息应答机制中的方式 1,回复 ACK 消息后,发现消息头中的消息类型错误,比如:消息类型标识为表 13 中未定义的消息类型 0x011。

b) 使用 7.7 描述的消息应答机制中的方式 1,回复 ACK 消息后,根据消息头中的消息类型,解析消息时,发现消息长度不正确。比如:根据 8.2.4.3 章节对 Source_Information 消息的定义,该消息的状态信息字段长度是 8 字节;如果接收到的 Source_Information 消息的状态信息长度不是 8 字节,则认为是错误。

供电设备、充电设备和线缆电子标签接收到一条 CRC 正确的消息,当消息中出现以下情形时,其回复 Refuse 消息中的拒绝原因是 0x02(不支持的命令或数据):

a) 根据消息头中的消息类型,读取到消息中的指令,该指令所定义的接收者不包括当前接收到该消息的设备的类型,如:供电设备接收到 Get_Sink_Info 消息。

b) 在数据消息和厂家自定义消息中,如果消息中的某些数据有范围要求,当接收到的数据超出要求的范围时,如:接收到的 Verify_Request 消息的密钥编号不是接收方的密钥编号、Request消息的输出模式编号、请求输出电压和请求输出电流超出范围,拒绝原因是 0x04。

c) 根据消息头中的消息类型,读取到消息中的命令,未在表 14 和表 15 中定义,也未在厂家自定义消息的命令列表中定义,如:接收到一条控制消息,其命令编号是 0x2A,该命令编号未在表 14 中定义。

d) 接收到的消息正确,并且消息中的命令和数据已有定义,但设备不能执行命令所对应的功能,如 : 供 电 设 备 和 充 电 设 备 接 收 到 Detect_Cable_Info 消 息 、 Verify_Request 消 息 、 Start_Cable_Detect 消息等,但设备不支持该功能。

8.2.4.10 Verify_Request 消息

Verify_Request 消息的结构如图 35 所示。

图 35 Verify_Reqest 消息结构

命令:设置为 Verify_Request 消息的命令对应的编号。

数据长度:数据包括密钥编号和随机数据两部分,共 17 字节,因此数据长度设置为 17。

密钥编号:供电设备、充电设备和线缆电子标签可以预存多套密钥,在发送 Verify_Request 消息时,应指定用哪套密钥进行加密。

随机数据:Verify_Request 消息的发送者,生成 16 个字节的随机数据。发送随机数据时,先发送高字节,再发送低字节。

8.2.4.11 Verify_Response 消息

资源下载此资源下载价格为6金币立即购买,VIP免费

1.本站大部份文档均属免费,部份收费文档,经过本站分类整理,花了精力和时间,收费文档是为了网站运营成本等费用开支;
2.购买会员(或单次下载)即视为对网站的赞助、打赏,非商业交易行为(不认同此观点请勿支付)请慎重考虑;
3.所有收费文档都真实可靠,为了节约成本,文档在网站前台不做预览,如果付费后,与实际文档不符合,都可以加微信号:pdftj888申请退款;
4.付费下载过程中,如果遇到下载问题,都可以加微信号pdftj888解决;
5.手机支付,尽量选择支付宝支付;
6.如图集或者标准不清楚,在本站找不到您需要的规范和图集,希望增加资料等任何问题,可联系微信号:pdftj888解决;

文档天下
  • 本文由 发表于 2026年5月21日 15:23:12
  • 转载请务必保留本文链接:https://www.998pdf.com/74148.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: