Comment accéder à plusieurs interfaces SPI sur Arduino

17

J'ai travaillé sur des appareils SPI connectés à un Arduino un à la fois. Comment travailler avec deux appareils SPI différents en même temps?

Abhishek Kulshrestha
la source

Réponses:

18

En supposant que vous vouliez simplement connecter deux périphériques esclaves SPI au bus SPI et les utiliser de manière mutuellement exclusive sous contrôle logiciel, avec l'Arduino comme maître, alors vous devez simplement vous assurer que vous utilisez une broche différente pour la sélection d'esclave ( SS) sur chaque appareil SPI.

Lorsque vous voulez parler à un esclave, vous maintenez son SS bas et conduisez l'autre haut. Faites le contraire pour parler à l'autre esclave.

Il y a quelques démons dans le détail utilisant plusieurs esclaves, et ceux-ci sont expliqués plus en détail ici , mais en général, il est assez courant et OK d'utiliser plus d'un périphérique SPI comme esclave.

Ce billet de blog vous donnera plus d'informations et est un bon endroit pour commencer à lire.

Roger Rowland
la source
2
De par sa conception, vous devez connecter MOSI / MISO / SCK en parallèle pour plusieurs esclaves, à l'exception du SS. Vous pouvez utiliser un circuit de registre à décalage / IC pour utiliser une connexion en guirlande sur l'esclave pour la ligne SS.
wajatimur