Поделиться через


Обзор транспорта HID

Транспорты HID, поддерживаемые в Windows

Транспорт Мини-driver в коробке Примечания.
USB Hidusb.sys Поддержка USB HID 1.11+ предоставляется в операционных системах Windows, начиная с Windows 2000.
Bluetooth Hidbth.sys Поддержка Bluetooth HID 1.1+ предоставляется в операционных системах Windows, начиная с Windows Vista.
Bluetooth LE HidBthLE.dll Windows 8 предоставляет поддержку HID через Bluetooth LE.
I2C Hidi2c.sys Windows 8 предоставляет поддержку HID по протоколу I2C.
GPIO Hidinterrupt.sys Windows 10 предоставляет поддержку кнопок ввода-вывода общего назначения (GPIO).
SPI HidSpi.sys Windows 11 предоставляет поддержку HID через последовательный периферийный интерфейс (SPI).

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

Если для устройства требуется транспорт, отличный от USB, Bluetooth, Bluetooth LE или I2C, рекомендуется использовать минипорт-драйвер, как описано в транспортных мини-drivers .

Ограничения транспорта HID

  • Длина дескриптора отчета

    Мини-накопитель транспорта отправляет дескрипторы отчета в Hidclass в HID_DESCRIPTOR структуре. Независимо от размера, определенного протоколом транспорта для передачи дескриптора отчета HID с устройствами, фактический размер дескриптора отчета ограничен во время обмена данными между Hidclass и мини-drivers HID.

  • TLCs в дескрипторе отчета

    Пара драйверов Hidclass/Hidparse знает о количестве TLCs в дескрипторе отчета. Минипорты HID не имеют этой информации. Каждый TLC имеет по крайней мере 2 байта, чтобы запустить коллекцию и 1 байт, чтобы завершить коллекцию.

  • Длина отчета входных и выходных данных/компонентов

    Пара драйверов Hidclass/Hidparse определяет длину входных, выходных и функциональных отчетов HID. Ограничение составляет 8 КБ (минус 1 бит). Даже если мини-накопитель HID может запросить передачу более 8 КБ для отчета, только отчеты меньше 8 КБ успешно передаются.

Мини-driver в коробке Длина дескриптора отчета TLCs в дескрипторе одного отчета Длина отчета входных и выходных данных/компонентов
Hidclass/Hidparse 65535 байт 21845 8 КБ — 1 бит
Hidusb 65535 байт Н/П 64 КБ
Hidbth 65535 байт Н/П 64 КБ
HidBthLE 65535 байт Н/П 64 КБ
Хиди2c 65535 байт Н/П 64 КБ
Hidspi 65535 байт Н/П 64 КБ
  • Usb Generic HID Test in the Windows Hardware Lab Kit (HLK) охватывает драйверы HidUsb и HidClass. Нет теста HLK для сторонних мини-драйверов HID.