USB HID


USB HID (human interface device) class — класс устройств USB для взаимодействия с человеком. Этот класс включает в себя такие устройства как клавиатура, мышь, игровой контроллер. Класс USB HID определен в нескольких документах, предоставляемых USB Implementers Forum, в частности, Рабочей группой по работе с устройствами.

Основной документ с дескрипторами класса: Device Class Definition for HID 1.11. В отдельных документах публикуются т. н. usage tables — списки кодов функций различных устройств ввода-вывода[1].

Класс USB HID описывает устройства, которые используются практически в каждом современном компьютере. В нём существует множество предопределённых функций. Они позволяют производителям аппаратного обеспечения разрабатывать продукты, соответствующие спецификации USB HID, и ожидать, что они будут работать с любым программным обеспечением, которое также поддерживает эти спецификации.

Точно такой же HID-протокол используется неизменённым в Bluetooth, в профиле взаимодействия с пользователем[2]. При чтении спецификации HID-профиля Bluetooth читателей просто направляют к документации USB HID. По этой причине эти устройства можно также отнести к классу USB HID.

Клавиатуры — одни из наиболее популярных USB HID устройств. USB HID клавиатуры, как правило, имеют входной поток данных, который передаёт нажатия клавиш в компьютер и выходной поток, который передаёт текущий статус клавиатурных индикаторов от компьютера к клавиатуре. Стандарт PC 97 определяет, что BIOS компьютера должен определять USB HID клавиатуры и работать с ними. Стандарт разработан для того, чтобы эти клавиатуры возможно было использовать во время загрузки компьютера.

Компьютерная мышь — столь же популярное USB HID устройство, как и клавиатура. USB-мыши различаются по функциональности от простых однокнопочных до довольно сложных многокнопочных устройств. Большинство современных операционных систем поставляется с драйверами для стандартных HID мышей (наиболее распространённые современные мыши имеют две кнопки и колёсико, которое дублирует третью кнопку); мыши с более широким возможностями требуют драйверов от производителей.