Introduzione a HID su SPI
Informazioni su come usare dispositivi di classe HUMAN Interface Device (HID) tramite un'interfaccia spi (Serial Peripheral Interface). Questa guida illustra i vantaggi dell'uso di SPI per i dispositivi HID, tra cui maggiore larghezza di banda, bassa latenza e facilità di implementazione dell'hardware. Informazioni su come integrare vari dispositivi HID, ad esempio tastiere, mouse e sensori usando il driver miniport HID fornito da Microsoft.
Microsoft ha creato un driver miniport HID che consente ai dispositivi di comunicare tramite un bus SPI (Serial Peripheral Interface).
SPI offre le funzionalità seguenti:
- Più veloce di I2C: maggiore larghezza di banda, frequenze di clock più elevate
- Bassa latenza
- Facile e conveniente da implementare nell'hardware
- Funziona bene per i dispositivi integrati nella piattaforma e non rimovibili
Questo articolo descrive come usare i dispositivi di classe HUMAN Interface Device (HID) su un semplice trasporto di bus periferici, con un focus immediato su SPI. La classe HID è costituita principalmente da dispositivi usati dagli esseri umani per controllare il funzionamento dei sistemi informatici. Esempi tipici di dispositivi di classe HID includono:
- Tastiere e dispositivi di puntamento come dispositivi mouse standard, trackball e joystick
- Controlli del pannello anteriore, ad esempio manopole, interruttori, pulsanti e dispositivi di scorrimento
- Controlli che potrebbero essere trovati su dispositivi come telefoni, controlli remoti, giochi o dispositivi di simulazione. Ad esempio, guanti dati, volante, tastierino e pedali da timone.
- Dispositivi che potrebbero non richiedere l'interazione umana, ma forniscono dati in un formato simile ai dispositivi di classe HID, ad esempio lettori a barre, termometri o altre forme di sensori
Il protocollo HID era originariamente destinato ai dispositivi di interfaccia umana. Tuttavia, il protocollo HID è utile per qualsiasi applicazione che richiede operazioni di input-output a bassa latenza a un'interfaccia esterna e la possibilità per tale dispositivo di descrivere se stesso. I tipici dispositivi di classe HID includono indicatori, schermi specializzati, feedback audio e feedback forzato o tattile.
Il protocollo HID è asimmetrico e identifica i ruoli per l'host e il dispositivo. Il protocollo definisce un formato (descrittori) per il dispositivo per descrivere le relative funzionalità all'host. Una volta compreso il formato di comunicazione con il dispositivo, l'host programma il dispositivo per l'invio dei dati all'host. Il protocollo HID identifica anche i modi per inviare dati al dispositivo e i controlli di stato per identificare lo stato corrente del dispositivo.
Estensione della classe
È possibile aggiungere alla funzionalità del driver WINDOWS HIDSPI incluso usando l'estensione di classe HIDSPICx. Per altre informazioni, vedere l'API HIDSPICx.
HID rispetto alla specifica SPI
La specifica completa del protocollo HID su SPI è disponibile per il download dall'Area download Microsoft.