Type-c现在非常通用了,所以了解Type-c也变得十分有必要了,还是秉承了解就要了解清楚的原则,我们深入的看看Type-c接口。
Type-c主要是取代上一代Micro usb接口,那么Type-c有什么优点呢?
正反可插,使用时不需要区分正反方向可以传输更高的速率,在支持 USB3.1 功能的接口中可以传输 4K 级别的视频可以支持更大的电流,满足 3A、5A 的充电功能,支持反向充电安全性更高,结构更加精细可靠1: Typc-C定义:(12Pin双排,24引脚)
Pin | 名称 | 功能描述 | Pin | 名称 | 功能描述 |
A1 | GND | 接地 | B12 | GND | 接地 |
A2 | SSTXP1 | superspeed差分信号#1 Tx+ | B11 | SSRXP1 | superspeed差分信号#1 Rx+ |
A3 | SSTXN1 | superspeed差分信号#1 Tx- | B10 | SSRXN1 | superspeed差分信号#1 Rx- |
A4 | VBUS | 总线电源 | B9 | VBUS | 总线电源 |
A5 | CC1 | configuration channel1 | B8 | SBU2 | Sideband use (sbu) |
A6 | DP1 | USB2.0差分信号1,正 | B7 | DN2 | USB2.0差分信号2,负 |
A7 | DN1 | USB2.0差分信号1,负 | B6 | DP2 | USB2.0差分信号2,正 |
A8 | SBU1 | Sideband use (sbu) | B5 | CC2 | configuration channel2 |
A9 | VBUS | 总线电源 | B4 | VBUS | 总线电源 |
A10 | SSRXN2 | superspeed差分信号#2 Rx- | B3 | SSTXN2 | superspeed差分信号#2 Tx- |
A11 | SSRXP2 | superspeed差分信号#2 Rx+ | B2 | SSTXP2 | superspeed差分信号#2 Tx+ |
A12 | GND | 接地 | B1 | GND | 接地 |
2:CC1和CC2的作用
首先说几个专业名词:
1:DFP(Downstream Facing Port):下行端口,可以理解为Host,DFP提供VBUS,可以提供数据。在协议规范中DFP特指数据的下行传输,笼统意义上指的是数据下行和对外提供电源的设备。典型的DFP设备是电源适配器。只能做Source
2:UFP(Upstream Facing Port):上行端口,可以理解为Device,UFP从VBUS中取电,并可提供数据。典型设备是U盘,移动硬盘。只能做sink端。
3:DRP (DualRolePort):双角色端口,DRP既可以做DFP(Host),也可以做UFP(Device),也可以在DFP与UFP间动态切换。典型的DRP设备是笔记本电脑,手机。
a:插入检测(host CC1 检测到下拉,相反从设备可以在CC1检测到上拉)
在DFP与UFP未连接之前,VBUS是没有输出的。当DFP与UFP连接后,CC pin连接。DFP上的CC pin会检测到来自UFP的下拉。此时代表了DFP与UFP连接成功。随后,DFP会打开VBUS上的FET,输出VBUS给UFP。
b:识别正反插
这里我们以手机为例。手机属于DRP,既可以做DFP,又可以做UFP。手机因CC logic的存在,当未连接Type C时, CC引脚是不断的循环被上拉与下拉的。此时如果用示波器测量机器的CC Pin的信号其实是方波。
手机充电时:对手机而言, 作为UFP时,内部的CC引脚直接通过Rd为下拉至地,充电器,作为DFP,内部的两个CC引脚是被上拉到VBUS
当充电器与手机连接,因手机内部CC引脚的下拉进而导致充电器的CC1 Pin被拉低时,此时代表UFP是向上插入。反之,如果充电器检测到CC2 pin被下拉时,则UFP就是向下插入。
(左:DFP,右:UFP)
如上图,CC1被拉低,则代表正面插入,相反CC2被拉低,则代表反面插入
c:了解VBUS配置方式:电流模式与USB PD
下图展示了每个USB标准所能提供的供电能力。纯type C端口可提供5V/3A的供电能力。如果配合PD协议,供电能力可以达到更高(USB pd协议通过CC引脚通信)。
Type c 存在1.5A与3A两种电流模式。其主要取决于DFP的输出能力。DFP通过CC引脚上的电压告知UFP供电能力。UFP的下拉电阻始终为5.1K保持不变,而DFP可通过其CC上的上拉电阻Rp或者电流源Ip来产生电压。
Type-C spec定义了DFP在不同模式下,在CC pin要供多大的电流或是要用多大的上拉电阻Rp阻值。
对于UFP而言,其主要是通过CC pin上的电压来得知DFP的输出能力。例如当5V/3A时,DFP会在CC上传递330uA的电流。在UFP上可得到电压330uA5.1K=1.683V。
亦或通过DFP上的上拉电阻10K计算出UFP上CC pin的电压5V5.1K/(5.1K+10K)=1.688V。一样可以判断DFP为Vrd/3.0A。
d:侦测连接到设备的端口类型
文章最开始说过DFP为HOST端,UFP为DEVICE端。DFP端的CC pin上存在上拉电阻Rp,UFP端的CC pin上存在下拉电阻Rd。在DFP与UFP未连接时,DFP上的VBUS是断开的,只有当DFP与UFP连接时,DFP便会打开FET,供电给UFP。
DFP可根据CC1与CC2的负载状态(如下图),来判断它是否接到了debug or Audio accessory装置。
e: 配置VCONN
从下图可以看到插座的A5与B5分别存在的是CC1与CC2。与之相对应的插头在A5与B5存在的是CC与Vconn。
CC Pin有CC1与CC2。当其中一个Pin被用来做DFP与UFP之间的连接。另一个Pin则用来供Vconn。当Cable内将另一个CC pin接一个下拉电阻Ra,这表示这是一条主动式Cable,需要被供电的。DFP侦测到Ra,便会输出VCONN在CC pin,供电给Cable(内部含有emark芯片)。Ra的阻抗是定义为800ohm 1200ohm。这个CC引脚将切换至VCONN对外输出4.755.5V,功率最大1W。
f: 在两个端口间协商建立DFP和UFP身份
Type-C除了DFP与UFP,还有一种是DRP(双模式端口,前面提过手机就是DRP),可以以一定的间隔在DFP与UFP间来回切换。当DRP端口与DFP设备相连,DRP则切换为UFP设备;同样地也可以切换为DFP设备。当两个DRP设备连接时,DFP与UFP身份是随机的。
此为某手机内部CC Logic芯片的内部框架图,可以看到CC Pin内部有个开关在RP与RD切换。
DRP未接入任何设备时,开关来回切换,CC1与CC2波形如上图所示。当有设备接入后,根据设备的不同,开关会固定在一端,此时DRP只能是一种模式,为UFP或者DFP。
g: 配置使用其他外设模式
Type-C规范定义了替代(Alt)模式与外设(Accessory)模式。主机、设备与线缆可以发送格式化的厂商自定义信息(VDM)来交换信息和发现USB ID。当主机通过VDM与设备交换信息后进入 Alt 模式,Type-C接口中的引脚定义将会改变以支持PCIe或者DisplayPort。下面的例子是一个Type-C扩展坞,它使用MUX切换PCIe或USB 3.1信号通至Type-C端口。
当CC1和CC2引脚同时使用Ra下拉时,主机将把设备识别成音频设备,然后从USB信号切换至音频信号。
从图中也可以同时看出来,接入音频设备时,Dp接入耳机的右声道,Dn接入耳机的左声道,SBU则连接至MIC。
3: Type-c版本
Type C 接口实际上为了适应不同的用途(全功能 24P Type C 价格较高为了节约成本,比如很多时候使用的芯片不需要使用或不支持 24 个引脚,不需要使用音视频传输,只需要使用 USB2.0,所以此时使用 24 片引脚的全功能版本 Type C 就显得浪费)按功能需求进行划分从而拥有多个版本,前面描述的实际属于全功能 Type C,共有 24 个功能引脚,该版本可以支持 USB3.0、USB2.0、协议,音视频传输,快速充电协议等等。
1:全功能 USB3.0/3.1、USB2.0、视频传输,24P Type C,目前我们交流说的 Type C 默认指的就是 24P 全功能 Type C。(24pin)
2:仅支持 USB2.0,16P/12P Type C,16Pin 和 12Pin 实际属于同一种接口。(16/12pin)
3:仅支持充电,6P Type C。(6pin)
所以对于 Type C 共有以上四个版本,实际使用因该是三个版本,在电路设计时按照自己实际需要实现的 USB 通信类型进行选择相应的 Type C 接口。
(16P 与 12P Type C 接口定义)
从上图可知 16Pin Type C 在 24Pin 全功能版本的基础上移除了 USB3.0 的 TX1/2、RX1/2 引脚,保留了 SBU1/2、CC1/2、USB2.0 的 D+ 和 D- 引脚,除了不支持 USB3.0/3.1 高速传输外,其他没有任何的差别,同样可以支持 PD 快充、音频传输、HDMI 传输、调试模式等其他功能。
6P Type C 接口定义
对于仅需支持充电,那么 USB2.0 D+ 和 D- 引脚也可移除进一步节约接口制造成本。6Pin Type C 仅保留Vbus、GND、CC1、CC2 引脚。接口两侧同样对称分布 Vbus 和 GND ,CC1,CC2 引脚用于支持正反接入,以及快充协议的支持。