USB 始终区分设备可以运行的“主机”和“外设”角色:有一个管理总线的“主机”(例如 PC),并且可以有许多连接的“外设”与主机通信。您无法将主机连接到主机,也无法将外围设备连接到外围设备。这种区别历来是由连接器强制执行的:主机具有 A 型插座,外围设备具有 A 型插头或 B 型插座。
然而,USB-C 对主机和外围设备使用相同的连接器。这让我想知道是什么决定了哪一位将成为主持人。USB-C 电缆是否有“主机端”和“外围端”,即使它们看起来相同,但在电气上可以区分?设备是否会协商哪一个将成为主机?如果是这样,他们使用什么标准?
与此相关的是,USB 主机历来为外围设备提供电源,既让它们运行(例如 USB 鼠标和闪存驱动器),又为其电池充电(例如手机)。通过 A 型和 B 型连接,哪个设备将为哪个设备充电始终一目了然。对于Type-C,情况就不那么清楚了。
我的手机 (Nexus 5X) 和平板电脑 (Pixel C) 都有 USB-C 端口,我发现如果我用 USB-C 线缆将它们连接在一起,平板电脑总是默认为手机充电,无论采用哪种方式我连接电缆。但如果我使用 USB-C OTG 适配器和 A-to-C 电缆连接它们,则连接到适配器的设备始终是提供电源的设备,这可能会导致手机为平板电脑充电。因此,当涉及 USB-A 端口时,似乎存在强制充电方向,但通过本机 USB-C 连接,设备可以以某种方式找出电源流动的“正确”方向。他们如何确定这一点?如果我将两部相同的手机或两台带有 USB-C 端口的笔记本电脑连接在一起会发生什么?
由于上面有一堆小问题,这里是一个大问题:USB 连接的某些元素必须是定向的(主机与外围设备,以及充电方向),那么 USB-C 连接如何确定哪个是方向性的?哪个?
由于这个问题还没有结束,我就在这里回答一下。
\n在 USB C 中,设备可以扮演的角色是独立的数据和电源角色。这些都是通过通过配置通道发送数据包来协商的 - USB C 有一条单独的 CC 线用于此目的,这是传统 A/B 连接器所缺少的。USB 供电标准中对此进行了全部规定。(虽然 USB Type-C 标准使用 USB PD 协议,但理论上 USB PD 可以用于其他地方。)
\n权力角色可以是
\n对于数据
\n众所周知,USB C 非常灵活(用不太仁慈的话来说:它是一个巨大的混乱),并且很难在上面的列表中给出好的例子。例如,便携式显示器上的 USB C 端口可能是:
\n对于问题中的示例,如果您有一个提供 USB A 插座的适配器并且符合标准,则它将在另一端配备 USB C 公头连接器。将 USB C 端插入设备将强制该设备承担 DFP 角色,并且还将为连接的传统 USB 设备提供 5V 电压。这既不是源模式也不是接收器模式,它是一种传统模式。它不是通过良好的谈判,而是通过一些阻力来强制的。顺便说一句,没有“USB C OTG”这样的东西,这是营销术语。
\n