Partilhar via


Desenvolver drivers de dispositivo Windows para os dispositivos de interface humana (HID)

Aprenda a desenvolver drivers de dispositivo Windows para Dispositivos de Interface Humana (HID). HID é uma definição de classe de dispositivo para drivers USB genéricos para suportar dispositivos HID, como teclados, mouses, controladores de jogos e assim por diante. Antes do HID, os dispositivos só podiam utilizar protocolos estritamente definidos para ratos e teclados. A inovação de hardware exigia sobrecarregar dados em um protocolo existente ou criar hardware não padrão com seu próprio driver especializado. O HID fornece suporte para dispositivos de modo de inicialização enquanto adiciona suporte para inovação por meio de interfaces extensíveis, padronizadas e facilmente programáveis.

Os dispositivos HID incluem monitores alfanuméricos, leitores de código de barras, alto-falantes, fones de ouvido, monitores auxiliares, sensores e muitos outros. Os fornecedores de hardware também usam HID para seus dispositivos proprietários.

O HID começou com USB, mas foi projetado para ser independente do barramento. Ele foi projetado para dispositivos de baixa latência e baixa largura de banda, mas com flexibilidade para especificar a taxa no transporte subjacente. O USB-IF ratificou a especificação para HID por USB em 1996. O apoio à HID em relação a outros transportes logo se seguiu. Detalhes sobre os métodos de transporte atualmente suportados podem ser encontrados em Métodos de Transporte HID Suportados no Windows. Transportes específicos do fornecedor também são permitidos por meio de motoristas de transporte personalizados.

Conceitos HID

O HID consiste em dois conceitos fundamentais, um descritor de relatório e relatórios. Os relatórios são os dados reais que são trocados entre um dispositivo e um cliente de software. O descritor de relatório descreve o formato e o significado dos dados suportados pelo dispositivo.

Relatórios

Aplicativos e dispositivos HID trocam dados por meio de relatórios. Existem três tipos de relatórios:

Tipo de relatório Descrição
Relatório de entrada Dados enviados do dispositivo HID para o aplicativo, normalmente quando o estado de um controle muda.
Relatório de resultados Dados enviados do aplicativo para o dispositivo HID, por exemplo, para os LEDs em um teclado.
Relatório de funcionalidades Dados que podem ser lidos e gravados manualmente e normalmente estão relacionados a informações de configuração.

Cada coleção de nível superior definida em um descritor de relatório pode conter zero ou mais relatórios de cada tipo.

Tabelas de utilização

O grupo de trabalho USB-IF publica tabelas de uso HID que fazem parte dos descritores de relatório que descrevem o que os dispositivos HID podem fazer. Essas tabelas de utilização HID contêm uma lista com descrições de Utilizações descrevendo o significado pretendido e a utilização de determinado item no descritor de relatório. Por exemplo, um uso é definido para o botão esquerdo de um mouse. O descritor de relatório pode definir onde em um relatório um aplicativo pode encontrar o estado atual do botão esquerdo do mouse. As tabelas de uso são divididas em vários espaços de nome, chamados de páginas de uso. Cada página de uso descreve um conjunto de usos relacionados para ajudar a organizar o documento. A combinação de um uso e uma página de uso define o ID de utilização que identifica exclusivamente uma utilização específica nas tabelas de uso.

Ver também