一、Type-C基本简介

1、Type-C基本接口定义

chatgpt接口连接 tpc-c接口_经验分享

Type-C支持正反插方式,接口定义如上。

全功能Type-C支持E-Marker功能,因此线材支持电流能力、特性、线材ID等读取。E-Marker的供电电源来源于VCONN,Cable会通过下拉电阻Ra,告知Source已连接上,Source检测到后就会提供VCONN

2、Type传输速率

chatgpt接口连接 tpc-c接口_chatgpt接口连接_02

Type-C最大的传输速率是10Gb/s,既是USB3.1 Gen2标准,支持4Lane DP模式传输高清图像,其电源最大支持100W(20V/5A)

Type-C通过CC(Configuration Channel)管脚进行设置,在PD规范上,CC引脚也被用来做简单的半双工通信,用于Power供给的协商

 

3、Type-C 的 Data Role(数据角色)

(1)DFP(DownstreamFacing Port):

下行端口,可以理解为Host或者是HUB,DFP提供VBUS、VCONN,可以接收数据。在协议规范中DFP特指数据的下行传输,笼统意义上指的是数据下行和对外提供电源的设备。

 

(2)UFP(Upstream Facing Port):

上行端口,可以理解为Device,UFP从VBUS中取电,并可提供数据。典型设备是U盘,移动硬盘。

 

(3)DRP(Dual Role Port):

双角色端口,DRP既可以做DFP(Host),也可以做UFP(Device),也可以在DFP与UFP间动态切换。典型的DRP设备是笔记本电脑。设备刚连接时作为哪一种角色,由端口的Power Role决定;后续也可以通过switch过程更改(需支持USB PD协议)。

 

4、Type-C 的 Power Role

根据USB PORT的供电(或者受电)情况,USB Type-C将port划分为Source、Sink等power角色

 

如下图显示常用设备的Data Role和Power Role

 

chatgpt接口连接 tpc-c接口_chatgpt接口连接_03

 

Power Role 详细可以分为:

a)Source Only 

b)默认Source,但是能够通过PD SWAP切换为SINK模式

c)Sink Only

d)默认SINK,但是能够通过PD SWAP切换为Source模式

e)Source/SINK 轮换

f)Sourcing Device(能供电的Device,如显示器)

g)Sinking Host(吃电的Host,如笔记本电脑)

 

USBType-C的插座中有两个CC脚,角色检测就是通过CC脚进行的,但是对于插头、或者线缆正常只有一个CC引脚,两个端口连接在一起之后,只存在一个CC引脚连接,通过检测哪一个CC有连接,就可以判断连接的方向。如果USB线缆中有需供电的器件,其中一个CC引脚将作为VCONN供电。

CC引脚有如下作用:

a)检测USB Type-C端口的插入,如Source接入到Sink

b)用于判断插入方向

c)在两个连接的Port之间,建立对应的Data Role

d)配置VBUS,通过下拉电阻判断规格,在PD协商中使用,为半双工模式

e)配置VCONN

f)检测还有配置其他可选的配置模式,如耳机或者其他模式

 

5、连接方向、Data Role、PowerRole角色检测

 

SourceSink Connection

 

chatgpt接口连接 tpc-c接口_Power_04

 

Source端CC引脚为上拉,Sink端CC引脚为下拉。握手过程为接入后检测到有效连接(即一端为Host一端为Device),随后检测线材供电能力,再进行USB枚举。

a)SINK的两个CC引脚均通道Rd下拉到GND

b)SINK通过检测VBUS,来判断Source的连接与否

c)SINK通过CC引脚上拉的特性,来检测目前的USB通信链路(翻转)

d)SINK可选地去检测Rp的值,去判断Source可提供的电流。同时管理自身的功耗,保证不超过Source提供的最大范围

e)同样的,如果支持高级功能,通过CC引脚进行通信。

 

二、PD充电通信过程

PD协议是Power Delivery,简单来说是一种快速充电标准。

包含PD协议的Type-C 系统从Source到SINK的系统框图大致如下:

chatgpt接口连接 tpc-c接口_引脚_05

在Source的内部包含了一个电压转换器,且受到PD控制器控制,他会根据输入电压的条件以及最高可输出规格需求,此电压转换器可以是BUCK、Boost、Buck-Boost或者反激转换器。整个通信过程都在PD控制器的管控之下,USB PD还有一个开关,用于切换VCONN电源(电缆包含电子标签时用到)。

 

当电缆接通之后,PD协议的SOP通信就开始在CC线上进行,以此来选择电源传输的规格,此部分由Sink端向Source端询问能够提供的电源配置参数(5V/9V/12V/15V/20V)。

 

如下波形为SINK 控制器申请一个9V电压输出的例子。

 

chatgpt接口连接 tpc-c接口_经验分享_06

 

1、充电器在连接建立后,会通过CC线进行广播,告诉连接的另外一方,充电器能够提供多少种电压以及对应的电流;

2、手机侧USB PD 设备策略管理器(policy_engine.c)监控CC上是否耦合了BMC信号,并且解码消息得出是SourceCapabilities消息,就根据USB PD规范解析该消息得出USB PD充电器所支持的所有电压和电流列表对;

3、手机根据充电的配置从SourceCapabilitie消息中选择一个电压和电流对,向适配器发送请求数据包,将电压和电流对加在Request消息的payload上,然后PD phy将BMC 信号耦合到CC上;

4、充电器解码BMC信号并发出Accept消息给手机,同时调整Power Supply的直流电  压和电流输出;

5、手机收到Accept消息,调整Charger IC的充电电压和电流;

6、手机在充电过程中可以动态发送Request消息来请求充电器改变输出电压和电流,从而实现快速充电的过程。