multiple spi arduino

This commit is contained in:
Alexander Popov 2023-06-04 18:06:34 +03:00
parent 4710379b25
commit 2f429a22b1
Signed by: iiiypuk
GPG Key ID: E47FE0AB36CD5ED6
1 changed files with 32 additions and 0 deletions

View File

@ -0,0 +1,32 @@
---
title: "📟 Подключение нескольких устройств по SPI к Arduino"
date: 2023-06-04T16:59:55+03:00
draft: false
tags: [arduino, tips, spi]
---
## Вопрос
Кто-нибудь сталкивался с подключениям нескольких SPI устройство к Arduino?
Подскажите, как заставить оба устройства работать?
Подключал к разным **CS**-пинам, всё равно не работает одно, пока не отключишь второе.
## Ответ
Если у вас один из стандартных вариантов плат (совместимых с UNO),
то ошибка в использовании **10** пина.
Стандартная библиотека `SPI` принудительно использует пин с номером **SS**
(см. `pins_arduino.h`) для активации ведомого.
В случае UNO-совместимых плат это как раз **10**-й.
Чтобы работали несколько устройств нужно делать так:
1. MOSI, MISO и SCK подключать соответственно к пинам `11`, `12` и `13` соответственно.
2. Для SS (CS) использовать любой пин, **кроме** `10`, `11`, `12` и `13`.
3. К 10 пину **не подключать вообще ничего**.
## Ссылки
- **ru.stackoverflow.com:**
[Подключение нескольких устройств по SPI Arduino](https://ru.stackoverflow.com/questions/1017515/Подключение-нескольких-устройств-по-spi-arduino)