USB 在工业应用中的使用越来越广泛:用于软件上传和配置、诊断、维护和连接 Wi-Fi® 路由器、显示屏和人机接口模块等外围模块。不过,USB 主要被定义为消费类电子产品接口,因此它本身无法处理工业应用中常见的大噪声干扰、接地反弹和接地电位差。另外,在不间断电源等应用中,带有 USB 接口的控制器位于高压或“热”端,需要对 USB 连接器进行保护隔离。由于这些原因,在工厂自动化、电机驱动器、医疗设备、电表和数据集中器、机载娱乐系统和游戏机等各类应用中,对 USB 接口进行电隔离是必要的。
上述应用通常都需要灵活地作为外设(设备)连接到 PC,或作为主机连接到 Wi-Fi 模块或 USB 存储器驱动器等外设。过去,系统设计人员提供了两个不同的端口来支持此功能:一个用于主机,一个用于外设 - 使用两个不同的 USB 隔离器(也称隔离式 USB 中继器)。此解决方案成本高昂并会占用宝贵的电路板空间。相反,USB Type-C® 连接器可以实现双角色端口 (DRP),即一个端口可以同时支持主机和外设功能。本文讨论了如何实现隔离式 USB 2.0 USB Type-C DRP。
图 2-1 展示了工业设备中隔离式主机和外设端口的传统实现。此实现采用具有固定上行和下行定义的 USB 隔离器。下行(主机)端口为 VBUS 提供 5V 电源并包含 15 kΩ 下拉电阻器,如 USB 标准所规定。上行(外设)端口不为 USB VBUS 供电。在连接到主机后,此端口会检测是否存在 VBUS 并通过 1.5 kΩ 电阻器上拉 DP(用于全速和高速运行)或 DM(用于低速运行)。这里,DP 是指 DPLUS/D+ 或 USB 数据差分对的正端子,DM 是指 DMINUS/D-。DRP 在外设模式(上行)下必须上拉 DP 和 DM,或者在主机模式(下行)下提供 15 kΩ 接地下拉电阻器并需要在 DP 和 DM 上外接 1.5 kΩ 上拉电阻器,因此具有固定上行和下行侧的传统隔离式 USB 中继器无法支持 DRP。
在 USB Type-C 中,端口充当的角色由 CC1 和 CC2 引脚的状态决定。外设端口在 CC1 和 CC2 到地之间具有下拉电阻器 Rd,主机端口具有连接到 VCC 的上拉电阻器 Rp,如图 3-1 所示。Rd 和 Rp 的值取决于 USB Type-C 标准。主机可以利用 Rp 的值来广播 VBUS 引脚上可用的电流:0.5A、1.5A 或 3A。
根据 USB Type-C 标准,DRP 定期通过 Rp(上拉至 VCC)与 Rd(下拉至地)切换 CC1 和 CC2 状态,周期为 50 ms 至 100 ms。当外部主机连接到 DRP 时,则会在 Rd 下拉间隔期间检测到该连接,并且 DRP 会充当外设(上行端口)。当外部外设连接到 DRP 时,则会在 Rp 上拉间隔期间检测到该连接,并且 DRP 会充当主机(下行端口)。