一,Typec CC引脚定义
可以看到,数据传输主要有TX/RX两组差分信号,CC1和CC2是两个关键引脚,作用很多:
• 探测连接,区分正反面,区分DFP和UFP,也就是主从
• 配置Vbus,有USB Type-C和USB Power Delivery两种模式
• 配置Vconn,当线缆里有芯片的时候,一个cc传输信号,一个cc变成供电Vconn
• 配置其他模式,如接音频配件时,dp,pcie时
电源和地都有4个,这就是为什么可以支持到100W的原因。
二、基本概念
DFP(Downstream Facing Port):即Host端,是数据的接收方。
UFP(Upstream Facing Port):即Device端,是数据的发送方。
DRP(Dual Role Port):双角色端口,既可以作为DFP,也可以作为UFP。在建立连接之前,DRP的角色在DFP和UFP之间切换。如果两个DRP连接,会先随机确定一种角色后开始建立连接,之后可以通过USB协议协商进行动态切换。
三、CC检测原理
Type-C连接器中有两个管脚CC1和CC2,它们用于识别连接器的插入方向以及不同的插入设备。CC检测原理主要依赖于这两个管脚上的电压和电阻变化。
DFP端:
DFP的CC1和CC2信号上都必须有上拉电阻Rp,上拉到5V或3.3V,或者CC1和CC2都用电流源上拉。目的是在插入后,能检测到CC1或CC2上的电压,进而判断是否翻转以及DFP的电流能力。
UFP端:
UFP的CC1和CC2管脚都要有一个下拉电阻Rd到GND(或者使用电压钳位)。
检测过程:
当Type-C线缆插入时,DFP会根据两根CC线上的电压变化来判断是否已经插入设备,并通过判断哪根CC线上有下拉电阻来判断方向。
如果CC1引脚检测到有效的Rp/Rd连接(对应的电压),则认为电缆连接未翻转;如果CC2引脚检测到有效的Rp/Rd连接(对应的电压),则认为电缆连接已翻转。
“有效的Rp/Rd连接”指在CC上形成了有效的电压。CC检测芯片会检测这个电压,通过判断电压范围来决定下一步操作。
DFP可根据两根CC线上的电压,判断是否已经插入设备。通过判断哪根CC线上有下拉电阻来判断方向,下图的说明已经非常清晰。
如果CC1引脚检测到有效的Rp/Rd连接(对应的电压),则认为电缆连接未翻转。
如果CC2引脚检测到有效的Rp/Rd连接(对应的电压),则认为电缆连接已翻转。
“有效的Rp/Rd连接”指在CC上形成了有效的电压。
3.1 DFP的上拉电阻Rp
DFP的CC1和CC2信号上都必须有上拉电阻Rp,上拉到5V或3.3V。或者CC1和CC2都用电流源上拉。最终的目的是在插入后,能检测到CC1或CC2上的电压,进而判断是否翻转以及DFP的电流能力。如下是所有可能的配置。可以选择右边三列中的任何一列作为上拉方式。
3.2 UPF的Rd
UFP的CC1和CC2管脚都要有一个下拉电阻Rd到GND(或者使用电压钳位)。Rd的处理方式如下表。
3.3 VCONN电源管理
带电子标签的线缆中,其中一个CC管脚被更名为VCONN,用于给电子标签芯片供电。VCONN的允许范围是4.75V~5.5V,要求供电能力是1W。默认情况下,DFP提供这个电源。如果两个DRP连接,则双方可以通过USB PD协议协商来交换VCONN供电方。
如果其中一个CC引脚上检测到有效的Rp/Rd连接,则VCONN电源可以接到另一个对应的CC引脚。
如果其中一个CC引脚上检测到有效的Rp/Rd连接,先检查另一个CC引脚是否也有Rp/Ra连接,然后再提供VCONN。
先检测是否有Ra存在,如果有说明需要Vconn供电,此时再提供Vconn。检测过程不需要Vconn存在。
注意,每一个CC引脚内部都有一个开关,轮训CC和VCONN功能,下图是一个典型的连接方式:
四,模式切换原理
DRP模式切换流程:
DRP在待机模式下会不断在DFP和UFP之间切换。切换时,DRP会改变CC线上的电阻值,以模拟DFP或UFP的状态。
当检测到有设备插入时,DRP会根据CC线上的电压变化来确定插入设备的角色(Host或Device)。
根据确定的角色,DRP会切换到相应的模式,并配置相应的数据传输模式和电源管理状态。
连接检测阶段
电压检测:
当有设备插入时,DFP端会立即检测CC1和CC2管脚上的电压变化。
如果其中一个CC管脚检测到有下拉电阻Rd存在(即电压发生变化),则说明有设备插入。
方向判断:
根据检测到下拉电阻的CC管脚(CC1或CC2),可以判断电缆的插入方向。
如果CC1检测到下拉电阻,则认为电缆未翻转;如果CC2检测到下拉电阻,则认为电缆已翻转。
角色协商:
在确定设备插入后,DRP会通过与对方设备的CC线进行通信,协商确定当前设备是作为Host还是Device。
协商过程中,双方会交换各自的角色信息,并达成一致。
五,总结工作流程
DFP (Downstream Facing Port)也就是主,UFP (Upstream Facing Port)为从。除了DFP、UFP,还有个DRP (Dual Role port),DRP可以做DFP也可以做UFP。当DPR接到UFP,DRP转化为DFP。当DRP接到DFP,DRP转化为UFP。两个DRP接在一起,这时就是任意一方为DFP,另一方为UFP。
在DFP的CC pin有上拉电阻Rp,在UFP有下拉电阻Rd。未连接时,DFP的VBUS是无输出的。连接后,CC pin相连,DFP的CC pin会检测到UFP的下拉电阻Rd,说明连接上了,DFP就打开Vbus电源开关,输出电源给UFP。而哪个CC pin(CC1,CC2)检测到下拉电阻就确定接口插入的方向,顺便切换RX/TX。
电阻Rd=5.1k,电阻Rp为不确定的值,根据前面的图看到USB Type-C有几种供电模式,靠什么来甄别? 就靠Rp的值,Rp的值不一样,CC pin检测到的电压就不一样,然后来控制DFP端执行哪种供电模式。
需要注意的是,上图里画了两个CC,实际上在不含芯片的线缆里只有一根cc线。
含芯片的线缆也不是两根cc线,而是一根cc,一根Vconn,用来给线缆里的芯片供电(3.3V或5V),这时就cc端没有下拉电阻Rd,而是下拉电阻Ra,800-1200欧。