Como acessar várias interfaces SPI no Arduino

17

Eu trabalhei em dispositivos SPI conectados a um Arduino, um de cada vez. Como trabalho com dois dispositivos SPI diferentes ao mesmo tempo?

Abhishek Kulshrestha
fonte

Respostas:

18

Supondo que você queira apenas conectar dois dispositivos escravos SPI ao barramento SPI e utilizá-los de maneira mutuamente exclusiva sob controle de software, com o Arduino como mestre, basta garantir um uso de um pino diferente para a seleção de escravos ( SS) em cada dispositivo SPI.

Quando você quer falar com um escravo, você mantém o SS baixo e conduz o outro alto. Faça o oposto para falar com o outro escravo.

Existem alguns demônios nos detalhes usando vários escravos, e eles são explicados com mais profundidade aqui , mas, em geral, é bastante comum e correto usar mais de um dispositivo SPI como escravo.

Esta postagem do blog fornecerá mais informações e é um bom lugar para começar a ler.

Roger Rowland
fonte
2
Por projeto, você deve conectar o MOSI / MISO / SCK em paralelo para vários escravos, exceto o SS. Você pode usar o circuito de registro de turnos / IC para usar uma conexão em cadeia daisy no escravo para a linha SS.
wajatimur