常见问题解答:Windows 系统上的 USB 类型 C 连接器

Windows 版本

  • Windows 10 桌面版(家庭版、专业版、企业版和教育版)
  • Windows 10 移动版

USB Type-C 连接器功能

对称和可逆设计

  • 连接器是 对称的。 电缆的两端都有一个 USB Type-C 连接器,允许主机和功能设备使用 USB Type-C 连接器。 下面是比较连接器的图像:
  • 连接器设计为 可逆。 传统的连接器必须“右向上”连接。 使用可逆设计,连接器可以翻转。

支持所有 USB 设备速度

连接器可以支持低速、全速、高速、超高速 (包括 SS+) 的 USB 设备。

备用模式

连接器可以支持 备用模式。 备用模式功能允许非 USB 协议通过 USB 电缆运行,同时保留 USB 2.0 和充电功能。 目前,最常用的备用模式是 DisplayPort/DockPort 和 MHL。

DisplayPort/DockPort

此备用模式允许用户通过 USB 连接器将音频/视频投影到外部 DisplayPort 显示器。

MHL

MHL 备用模式允许用户将视频/音频投影到支持 MHL 的外部显示器。

广告牌错误消息

如果用户连接附加的电脑或手机不支持的 USB Type-C 备用模式设备或适配器,则设备或适配器可以公开包含错误条件相关信息的 Billboard 设备,以帮助用户解决问题。

增加的功率限制

具有 USB Type-C 连接器的系统具有更高的功率限制,最多可支持 5V、3A、15W。

此外,连接器还可以选择支持 USB 供电 OEM 定义的 电源传送 功能。 如果连接器支持供电,USB Type-C 系统可以是电源提供商或使用者,支持高达 100W。

支持 USB 双重角色

外围设备可以使用 USB Type-C 连接器连接到移动系统,从而将移动系统的传统角色从功能更改为主机。 当同一系统连接到电脑时,系统将恢复函数的角色,而电脑将成为主机。

需要协商备用模式的操作系统输入,例如 DP 2 通道与 DP 4 通道

否。 操作系统 (或任何 Microsoft 提供的软件组件) 在选择备用模式方面不起任何作用。 该决策由连接器的驱动程序做出,特别是 USB 连接器管理器 (UCM) 客户端驱动程序。 驱动程序通过使用硬件接口与连接器的固件通信来执行此操作。

使用 Type-C 和 PD 预操作系统充电

启用 OS 前充电由 OEM 拥有。 可以选择不实现 USB 电源传送,并在 USB Type-C 电源级别充电,直到启动到操作系统。

当手机是 USB 主机时为手机充电,以启用 Continuum 等停靠方案

以下是需要考虑的一些事项:

  • 必须实现 USB 电源传送,以便可以独立交换电源和数据角色。

  • 扩展坞的上游端口应实现为 USB 类型 C 规范中定义的充电 UFP。 有关详细信息,请参阅第 4.8.4 部分,版本 1.1。

  • 如果扩展坞解析为 DFP,则应请求DR_Swap;如果解析为 UFP,则应请求PR_Swap。

    初始 DFP 是电源,因此必须更改数据角色。 初始 UFP 是电源接收器,因此必须更改电源角色。 可以在这些回调函数的实现中执行这些操作:

Windows 10 移动版支持 USB 广告牌设备

是的,如果你将手机连接到支持 USB 广告牌的设备,根据 广告牌设备的 USB 设备类定义规范,用户会收到通知。 不需要 USB 连接器管理器 (UCM) 客户端驱动程序来处理通知。 如果系统无法识别备用模式,请不要进入该模式。

在早期版本的 Windows 上支持 USB Type-C

Windows 10之前的 Windows 版本不支持 USB Type-C。

早期版本的 Windows 上的 UCSI 支持

Windows 10之前的 Windows 版本不支持 UCSI。

如何测试 UCSI 的实现

若要测试实现,请遵循 USB Type-C 手动互操作性测试过程中提供的准则。 我们建议在 Windows Hardware Lab Kit (HLK) for Windows 10 中运行 USB 测试。 这些测试列在 适用于 USB 的 Windows 硬件认证工具包测试中。

不同错误的条件和 UI

Windows 10可以显示一组 USB 类型 C 错误消息,以帮助告知用户 USB Type-C 硬件和软件的不同组合的限制。 例如,如果连接到 USB Type-C 连接器的充电器不够强大、与系统不兼容或连接到非充电端口,则用户可能会收到“设备充电缓慢”消息。 有关详细信息,请参阅 排查 USB 类型 C Windows 系统的消息问题。

将非 PD 端口连接到 PD 提供程序,并将 PD 使用者连接到非 PD 提供程序的系统

非 PD 端口尝试使用 USB Type-C 当前级别为系统充电。 有关详细信息,请参阅 USB 3.1 和 USB Type-C 规范

将 Thunderbolt、SuperMHL 或 PCI Express 连接到不支持这些功能的电脑

备用模式功能允许非 USB 协议 ((如 Thunderbolt、SuperMHL) )通过 USB 电缆运行,同时保留 USB 2.0 和充电功能。 如果用户连接运行Windows 10的附加电脑或手机不支持的 USB Type-C 备用模式设备或适配器,则会检测到错误情况,并向用户显示一条消息。

  • 如果设备或适配器公开了广告牌设备,则用户会看到有关错误条件的信息,以帮助解决问题。 Windows 10为广告牌设备提供内置驱动程序,并通知用户发生了错误。
  • 用户可能会看到错误通知“尝试改善 USB 连接”。 有关详细信息,请参阅 修复 USB-C 问题

为了获得最佳结果,请确保电脑、手机或电缆满足备用模式设备或适配器的要求。

Windows 中通过 USB Type-C 对 MTP 的支持和限制

桌面版Windows 10支持发起方角色中的 MTP;Windows 10 移动版支持响应者角色中的 MTP。

下游设备和集线器如何与 USB 连接器管理器 (UCM)

UCM 是自己的设备堆栈, (请参阅 体系结构:适用于 Windows 系统的 USB 类型 C 设计) 。 Windows 10 USB Type-C 支持包括所需的管道,以确保不同的类驱动程序知道如何与不同的 USB Type-C 连接器进行通信。 若要获得对 USB Type-C 的Windows 10支持,必须插入 UCM 设备堆栈。

HLK 测试的 USB 类型 C MUTT 要求

适用于 Windows 10 的 Windows HLK 包含 USB 主机和功能控制器的测试。 若要测试系统,请使用 USB C-A 适配器。 这些测试列在 适用于 USB 的 Windows 硬件认证工具包测试中。

Microsoft 支持在同一Windows 10 SKU 之间传输 P2P 数据

这不是有效的连接。

  • 不能连接运行桌面版Windows 10的两台电脑。
  • 无法连接运行Windows 10 移动版的两个移动设备。

如果用户尝试建立此类连接,Windows 会显示一条错误消息。 有关详细信息,请参阅 USB 类型 C Windows 系统的错误消息

唯一有效的连接是在 Windows Mobile 设备和 Windows 桌面设备之间。

UCM 类扩展 (UcmCx) 与 PMIC 或电池驱动程序通信以获取/设置充电状态

在软件辅助充电平台上,UcmCx 与 PMIC 和电池子系统通信。 客户端驱动程序可以通过硬件接口与硬件通信来确定充电级别。 在硬件辅助平台上,嵌入式控制器负责充电。 UcmCx 不参与该过程。

HLK 对 USB Type-C 的支持

在适用于 Windows 10 的 Windows HLK 中,没有特定于 USB 类型 C 的测试。 建议在 Windows HLK 中运行 USB 测试以Windows 10。 这些测试列在 适用于 USB 的 Windows 硬件认证工具包测试中。

UCSI

USB Type-C 连接器系统软件接口 (UCSI) 规范 介绍了 USB Type-C 连接器系统软件接口 (UCSI) 的功能,并介绍了硬件组件设计人员、系统构建者和设备驱动程序开发人员的寄存器和数据结构。

Microsoft 提供具有 Windows 的内置驱动程序(UcmUcsi.sys),可实现规范定义的功能。 此驱动程序适用于具有嵌入式控制器的系统。

测试在 Windows 10 上运行的 UCSI 实现

建议在 Windows HLK 中运行 USB 测试以Windows 10。 这些测试列在 适用于 USB 的 Windows 硬件认证工具包测试中。

在 Windows 10 上测试 UCMCx 客户端驱动程序

建议在 Windows HLK 中运行 USB 测试以Windows 10。 这些测试列在 适用于 USB 的 Windows 硬件认证工具包测试中。

UCM 类扩展处理的 VBus/VConn 控制和角色切换操作

UCM 类扩展可能会从操作系统获取更改连接器的数据或电源方向的请求。 当它收到这些请求时,它会调用客户端驱动程序实现 的 EVT_UCM_CONNECTOR_SET_DATA_ROLEEVT_UCM_CONNECTOR_SET_POWER_ROLE 回调函数 (如果连接器实现 PD) 。 在实现中,客户端驱动程序应控制 VBUS 和 VCONN 引脚。 有关这些回调函数的详细信息,请参阅 编写 USB Type-C 连接器驱动程序