Présentation de l’IHM sur SPI
Découvrez comment utiliser des appareils de classe HID (Human Interface Device) sur une interface périphérique série (SPI). Ce guide présente les avantages de l’utilisation de SPI pour les appareils HID, notamment une bande passante accrue, une faible latence et une facilité d’implémentation matérielle. Découvrez comment intégrer différents appareils HID tels que des claviers, des souris et des capteurs à l’aide du pilote hid miniport fourni par Microsoft.
Microsoft a créé un pilote miniport HID qui permet aux appareils de communiquer via un bus SPI (Serial Peripheral Interface).
SPI offre les fonctionnalités suivantes :
- Plus rapide que I2C : plus de bande passante, taux d’horloge plus élevés
- Latence faible
- Facile et peu coûteux à implémenter dans le matériel
- Fonctionne bien pour les appareils intégrés à la plateforme et non amovibles
Cet article explique comment utiliser des appareils de classe HID (Human Interface Device) sur un transport de bus périphérique simple, avec un focus immédiat sur SPI. La classe HID se compose principalement d’appareils utilisés par les humains pour contrôler le fonctionnement des systèmes informatiques. Voici quelques exemples typiques d’appareils de classe HID :
- Claviers et dispositifs pointants tels que les appareils de souris standard, les trackballs et les joysticks
- Contrôles frontaux tels que les boutons, les commutateurs, les boutons et les curseurs
- Contrôles qui peuvent être trouvés sur des appareils tels que les téléphones, les contrôles à distance, les jeux ou les appareils de simulation. Par exemple, des gants de données, des volants, des pavés de touches et des pédales de gouvernail.
- Appareils qui peuvent ne pas nécessiter d’interaction humaine, mais fournir des données dans un format similaire aux appareils de classe HID, par exemple, les lecteurs de code barres, les thermomètres ou d’autres formes de capteurs
Le protocole HID a été initialement ciblé sur les appareils d’interface humaine. Toutefois, le protocole HID est utile pour toute application nécessitant des opérations d’entrée-sortie à faible latence vers une interface externe et la possibilité pour cet appareil de se décrire. Les appareils de classe HID classiques incluent les indicateurs, les affichages spécialisés, les commentaires audio et la force ou les commentaires tactiles.
Le protocole HID est asymétrique et identifie les rôles pour l’hôte et l’appareil. Le protocole définit un format (descripteurs) pour que l’appareil décrive ses fonctionnalités à l’hôte. Une fois que l’hôte comprend le format de communication avec l’appareil, il programme l’appareil pour envoyer des données à l’hôte. Le protocole HID identifie également les moyens d’envoyer des données à l’appareil et de vérifications d’état pour identifier l’état actuel de l’appareil.
Extension de classe
Vous pouvez ajouter aux fonctionnalités du pilote Windows HIDSPI inclus à l’aide de l’extension de classe HIDSPICx. Pour plus d’informations, consultez l’API HIDSPICx.
Spécification HID sur SPI
La spécification complète du protocole HID sur SPI est disponible en téléchargement à partir du Centre de téléchargement Microsoft.