SPI, un protocole de communication en série synchrone développé à l'origine par Motorola (maintenant Freescale),est devenu omniprésent dans les systèmes embarqués pour connecter des microcontrôleurs avec des périphériques comme des capteursSa popularité découle de sa flexibilité, de sa capacité à haute vitesse et de sa mise en œuvre matérielle simple.
Le protocole SPI standard utilise quatre lignes de signal primaires:
SPI fonctionne dans une configuration maître-esclave où le maître lance toutes les communications.Le protocole fonctionne comme un registre de changement et permet le transfert de données bidirectionnel simultané., bien que les implémentations pratiques nécessitent souvent des phases de commande et de données séquentielles.
Les contrôleurs d'affichage implémentent généralement deux variantes de SPI: "3-wire SPI" et "4-wire SPI", distingués principalement par leur approche de la différenciation des commandes des données.
La configuration traditionnelle de 4 fils comprend:
Cette architecture reflète les contrôleurs d'interface parallèles qui maintenaient des registres de commande et de données séparés, en utilisant la ligne C / D (parfois étiquetée A0) pour basculer entre eux.
La version simplifiée à 3 fils élimine la ligne C/D dédiée, en codant cette information dans le flux de données:
Ici, un bit supplémentaire (généralement le MSB) indique si la transmission contient des commandes (1) ou des données (0), créant effectivement des transmissions de 9 bits au lieu des transferts standard de 8 bits.
Certains contrôleurs utilisent un codage de données à trois fils tout en utilisant physiquement quatre fils (en ajoutant MISO pour les opérations de lecture).créer une communication bidirectionnelle sur une seule ligne de données.
Alors que le SPI à 3 fils réduit les connexions physiques, sa longueur de transmission non standard peut compliquer les implémentations de SPI matérielles.Les processeurs modernes avec des contrôleurs SPI flexibles peuvent accueillir des transferts de 9 bits, mais de nombreux systèmes traditionnels trouvent le SPI à 4 fils plus simple à mettre en œuvre.
L'architecture de SPI ressemblant à un registre de changement le rend particulièrement approprié pour les appareils en chaîne de marguerite:
Cette approche simplifie les systèmes multi-appareils, mais introduit une latence proportionnelle à la longueur de la chaîne et exige que tous les appareils prennent en charge la chaîne de marguerite.
Maîtriser les implémentations SPI est essentiel pour les développeurs embarqués travaillant avec des technologies d'affichage.Le choix entre un SPI à 3 fils et un SPI à 4 fils dépend des capacités matérielles spécifiques et des exigences du contrôleur. Alors que 3 fils offrent une économie de connexion, 4 fils maintient la compatibilité avec le matériel SPI standard.