Condividi tramite


ID hardware HIDClass per le raccolte di livello superiore

Questa sezione specifica gli ID hardware generati dal driver di classe HID per le raccolte di livello superiore.

I fornitori devono usare i formati designati come formati ID hardware fornitore per identificare le raccolte di livello superiore. Tutti gli altri formati id dispositivo sono riservati solo per uso interno.

Gli ID hardware generati dal driver di classe HID per un devnode dipendono dagli elementi seguenti:

  1. Numero di funzioni supportate dal trasporto sottostante
  2. Numero di raccolte di livello superiore nel descrittore di report

In base a questi fattori, esistono 4 categorie di ID hardware

Tipo TLC singolo Più TLC
Single-Function Case 1 Case 2
Multi-Funzione Caso 3 Caso 4

Caso 1: dispositivo a funzione singola con singolo TLC

Condizione in cui viene usato questo formato ID hardware:

  1. Numero di funzioni supportate dal trasporto sottostante = 1 &&
  2. Numero di TLC = 1

Formato ID hardware:

  • HID\Vid_v(4)&Pid_d(4)&Rev_r(4)
  • HID\Vid_v(4)&Pid_d(4)
  • HID_DEVICE_UP:p(4)_U:u(4)
  • HID_DEVICE

Caso 2: dispositivo a funzione singola con più TLC

Condizione in cui viene usato questo formato ID hardware:

  1. Numero di funzioni supportate dal trasporto sottostante = 1 &&
  2. Numero di TLC > 1

Formato ID hardware:

  • HID\Vid_v(4)&Pid_d(4)&Rev_r(4)&Colb(2)
  • HID\Vid_v(4)&Pid_d(4)&Colb(2)
  • HID_DEVICE_UP:p(4)_U:u(4) [RISERVATO SOLO PER LE FUNZIONI INFS DI WINDOWS]
  • HID_DEVICE [RISERVATO SOLO PER I FILE INFS DI WINDOWS]

Caso 3: dispositivo a più funzioni con singolo TLC

Condizione in cui viene usato questo formato ID hardware:

  1. Numero di funzioni supportate dal trasporto > sottostante 1 &&
  2. Numero di TLC = 1

Formato ID hardware:

  • HID\Vid_v(4)&Pid_d(4)&Rev_r(4)&MI_z(2)
  • HID\Vid_v(4)&Pid_d(4)&MI_z(2)
  • HID_DEVICE_UP:p(4)_U:u(4) [RISERVATO SOLO PER LE FUNZIONI INFS DI WINDOWS]
  • HID_DEVICE [RISERVATO SOLO PER I FILE INFS DI WINDOWS]

Caso 4: dispositivo a più funzioni con più TLC

Condizione in cui viene usato questo formato ID hardware:

  1. Numero di funzioni supportate dal trasporto > sottostante 1 &&
  2. Numero di TLC > 1

Formato ID hardware:

  • HID\Vid_v(4)&Pid_d(4)&Rev_r(4)&MI_z(2)&Colb(2)
  • HID\Vid_v(4)&Pid_d(4)&MI_z(2)&Colb(2)
  • HID_DEVICE_UP:p(4)_U:u(4) [RISERVATO SOLO PER LE FUNZIONI INFS DI WINDOWS]
  • HID_DEVICE [RISERVATO SOLO PER I FILE INFS DI WINDOWS]

ID hardware per scopi speciali

Di seguito sono riportati gli ID hardware (solo per uso interno) usati da Windows per fornire funzionalità di sistema predefinite.

Tipo di dispositivo Pagina Utilizzo Utilizzo Hardware ID
Puntatore 0x01 0x01 HID_DEVICE_SYSTEM_MOUSE
Mouse 0x01 0x02 HID_DEVICE_SYSTEM_MOUSE
Joystick 0x01 0x04 HID_DEVICE_SYSTEM_GAME
Game pad 0x01 0x05 HID_DEVICE_SYSTEM_GAME
Tastiera 0x01 0x06 HID_DEVICE_SYSTEM_KEYBOARD
Tastiera 0x01 0x07 HID_DEVICE_SYSTEM_KEYBOARD
Controllo di sistema 0x01 0x80 HID_DEVICE_SYSTEM_CONTROL
Controllo audio consumer 0x0C 0x01 HID_DEVICE_SYSTEM_CONSUMER

Note importanti:

  • Non sono presenti ID compatibili generati da HIDClass
  • Gli INFS di terze parti del fornitore devono corrispondere solo agli ID hardware
  • Gli ID hardware che contengono HID_DEVICE_SYSTEM_* sono dispositivi "speciali" aperti dal sistema operativo per il relativo utilizzo. L'INF fornito dal fornitore non deve corrispondere a questi ID hardware speciali.
  • I minidriver di trasporto HID forniti dal fornitore devono fornire i campi elencati di seguito per garantire che HIDClass possa generare gli ID hardware appropriati.

Legenda:

Campo Contiene Valore esadecimale Significato
v(4) quattro cifre esadecimale 0x0000-0xFFFF ID fornitore
d(4) quattro cifre esadecimale 0x0000-0xFFFF Product ID
r(4) quattro cifre esadecimale 0x0000-0xFFFF Revision Number
z(2) due cifre esadecimale 0x00-0xFF Numero di interfaccia (usato solo con dispositivi USB compositi).
b(2) due cifre esadecimale 0x00-0xFF Numero di raccolta (usato solo con dispositivi TLC multipli).
p(4) quattro cifre esadecimale 0x0000-0xFFFF Numero di pagina di utilizzo per TLC
u(4) quattro cifre esadecimale 0x0000-0xFFFF Numero di utilizzo di TLC