Поддержка Windows для соединителей USB-Type-C

Эта статья предназначена для изготовителей оборудования, которые хотят создать систему Windows с usb-Type-C соединителем. Вы можете использовать функции ОС, которые позволяют ускорить зарядку, питание, двойную роль, альтернативные режимы и уведомления об ошибках с помощью устройств Billboard.

Традиционное USB-подключение использует кабель с соединителем USB A и USB B на каждом конце. Соединитель USB A всегда подключается к стороне узла, а соединитель USB B подключается к стороне функции, которая является устройством (телефоном) или периферийным устройством (мышь, клавиатура). Используя эти разъёмы, вы можете подключить хост только к функции; никогда хост к другому хосту или функцию к другой функции. Хост является поставщиком питания, а функция потребляет питание от хоста.

Традиционная конфигурация ограничивает некоторые сценарии. Например, если мобильное устройство хочет подключиться к периферийным устройствам, устройство должно выступать в качестве узла и доставлять питание подключенного устройства.

Соединитель USB-Type-C, представленный USB-IF, определенный в спецификации USB 3.1, устраняет эти ограничения. Windows 10 представила встроенную поддержку этих функций.

Изображение соединителей микро-USB и USB-Type-C для сравнения.

Сводка по функциям

  • Поддерживает более быструю зарядку, до 100 ватт с использованием технологии питания Power Delivery (PD) через USB Type-C.
  • Использует один соединитель для USB-узлов и USB-устройств.
  • Переключает роли USB для поддержки USB-узла или устройства.
  • Переключает режимы мощности между источником и приемником энергии.
  • Поддерживает другие протоколы, такие как DisplayPort и Thunderbolt через USB Type-C.
  • Представлен класс устройства USB Billboard для предоставления уведомлений об ошибках для альтернативных режимов.

Официальные спецификации

Проектирование оборудования

Соединитель USB-Type-C является обратимым и симметричным.

Изображение usb-Type-C симметричного кабеля.

Основными компонентами являются разъем USB-Type-C и его порт или контроллер PD, который управляет логикой пинов CC для разъема. Такие системы обычно имеют контроллер с двойной ролью, который может переключать роль USB с хоста на функцию. Он имеет модуль Display-Out, который позволяет передавать видео сигнал через USB. При необходимости он может поддерживать обнаружение зарядных устройств BC1.2.

Рассмотрите рекомендации по проектированию и разработке USB-компонентов. Включите минимальные требования к оборудованию, требования к программе совместимости оборудования Windows и другие рекомендации, которые основаны на этих требованиях.

Выбор модели драйвера

Используйте эту блок-схему, чтобы определить решение для системы USB Type-C.

Блок-диаграмма для определения решения для системы USB-Type-C.

Если ваша система... Рекомендуемое решение...
Не реализует машины состояний PD Напишите драйвер клиента в расширение класса UcmTcpciCx.

Написать драйвер контроллера порта USB Type-C
Реализует автоматы состояний PD в оборудовании или встроенном ПО и поддерживает интерфейс программного обеспечения системы соединителя USB Type-C (UCSI) через ACPI Загрузите предустановленные драйверы, предоставленные Microsoft, UcmUcsiCx.sysи UcmUcsiAcpiClient.sys.

См. драйвер UCSI.
Реализует машины состояний PD в оборудовании или встроенном ПО, но либо не поддерживает UCSI, либо поддерживает UCSI, но требует использования другого транспорта, кроме ACPI. Напишите драйвер клиента для расширения класса UcmCx.

Написать драйвер для разъема USB Type-C

Написать драйвер клиента диспетчера политик USB Type-C
Реализует UCSI, но требует транспорта, отличного от ACPI Напишите драйвер клиента в расширение класса UcmUcsiCx.

Используйте этот пример шаблона и измените его на основе транспорта, используемого оборудованием.

Написание драйвера клиента UCSI

Установить драйверы

  • Функциональный драйвер USB требуется только если вы поддерживаете режим устройства USB. Если вы ранее реализовали драйвер функции USB для соединителя USB micro-B, опишите соответствующие соединители в виде USB-Type-C в таблицах ACPI для драйвера функции USB для продолжения работы.

    Дополнительные сведения см. в инструкциях по написанию драйвера ФУНКЦИИ USB.

  • USB-драйвер Role-Switch требуется только для устройств с контроллером двойной роли, который может выступать в качестве ведущего и выполнять функции. Чтобы инициализировать драйвер USB-Role-Switch, необходимо изменить таблицы ACPI, чтобы включить встроенный драйвер переключения ролей USB от Microsoft.

    Дополнительные сведения см. в руководстве по настройке драйвера коммутатора ролей USB.

  • Драйвер диспетчера USB-соединителей требуется для управления портами USB-Type-C в системе. Задачи настройки драйвера менеджера USB-коннекторов зависят от выбранного драйвера для портов USB Type-C: встроенного драйвера UCSI (UcmUcsiCx.sys и UcmUcsiAcpiClient.sys) от Microsoft, клиентского драйвера UcmCx или клиентского драйвера UcmTcpciCx. Дополнительные сведения см. в ссылках, приведенных в предыдущем разделе, в котором описано, как выбрать подходящее решение для системы USB-Type-C.

Тест

Проводите различные функциональные и стресс-тесты на системах и устройствах с разъёмом USB-Type-C.

  • Тестирование систем USB-Type-C с помощью USB-Type-C ConnEx: выполнение USB-тестов, включенных в Набор тестирования оборудования Windows (HLK).
  • Выполните тесты HLK функции USB с кабелем C-to-A: найдите USB-устройство Windows в HLK.
  • Сертификация и соблюдение стандартов: участие в семинарах по технологии Power Delivery и соответствию стандарту USB Type-C, организованных органами по стандартизации.

См. также