33 lines
1.7 KiB
Markdown
33 lines
1.7 KiB
Markdown
|
---
|
|||
|
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)
|