Qu'est-ce que l'interface périphérique série?
Une interface de périphérique série (SPI) est une interface de flux de données série de communication série synchrone en duplex intégral à faible coût qui fonctionne dans une relation maître-esclave. Le transfert de données dans les périphériques série se produit un bit à la fois, faisant de SPI une interface à faible vitesse. Il est couramment utilisé en tant que lien entre des circuits intégrés et des périphériques intégrés lents auxquels on accède par intermittence. Il est en concurrence avec les dispositifs de transmission de données parallèles, mais à mesure que l'efficacité de SPI augmente, son avantage diminue. SPI est parfois appelé "microwire", bien que cela soit considéré comme un protocole de sous-ensemble de SPI.
Les transferts de données via une interface périphérique série se font via un protocole en duplex intégral. Les données sont transférées et reçues dans les deux sens en même temps. Les applications utilisant SPI gagnent beaucoup en efficacité dans ce mode; une de ces applications se situe entre un codeur-décodeur (codec) et un processeur de signal numérique (DSP). D'autres applications incluent les capteurs de température et de pression, ainsi que la mémoire flash.
Chaque fois que deux périphériques d'interface série communiquent, un périphérique est appelé "maître", tandis que l'autre est "esclave". Le périphérique maître initie toutes les communications en transmettant des signaux au périphérique esclave. Un bus d'interface de périphérique série peut connecter plusieurs périphériques esclaves à un seul maître.
Les périphériques d’interface périphérique série utilisent trois registres - registre de contrôle (SPCR), registre d’état (SPSR) et registre de données (SPDR)] pour l’envoi de données, ainsi que quatre signaux différents. Le premier signal est appelé horloge série (SCLK), que seul le dispositif maître génère. Viennent ensuite MOSI (Master-Out Slave In), MISO (Slave In Out) (MISO) et Slave SSn (SSn), où "n" correspond au nombre de périphériques esclaves auxquels le périphérique maître est connecté.
Dans une configuration typique à un seul esclave, un ingénieur cherchant à utiliser une interface de périphérique série connecterait SCLK à l'entrée d'un périphérique esclave. MOSI transfère ensuite les données du périphérique maître vers le périphérique esclave, tandis que MISO transfère les données de l'esclave au maître. Pour déterminer quel périphérique est maître et lequel est esclave, le premier connecte le maître SSn au esclave SSn et génère un signal d'entrée / sortie discret à usage général pour le second.
Pour connecter plusieurs esclaves à un maître dans une interface de périphérique série, des signaux SSn distincts sont connectés du périphérique maître à des esclaves séparés. Par exemple, SS1 est connecté à l'esclave 1, SS2 à l'esclave 2, etc. Semblable à la configuration mono-esclave, SCLK est connecté du périphérique maître aux multiples esclaves. MOSI du maître aux esclaves sont connectés, ainsi que MISO des esclaves au maître.