Skip to content

Пример использования SPI

Pripekashkin edited this page Jun 13, 2024 · 2 revisions

Общий пример

#include <SPI.h>

#define MOSI 23
#define MISO 19
#define SCLK 18
#define CS   5

void setup() {
  SPI.begin(SCLK, MISO, MOSI, CS); // Инициализация SPI
}

void loop() {
  SPI.beginTransaction(SPISettings(1000000, MSBFIRST, SPI_MODE0)); // Начало транзакции SPI
  digitalWrite(CS, LOW); // Выбор ведомого устройства

  // Отправка и прием данных
  byte data = SPI.transfer(0x00);

  digitalWrite(CS, HIGH); // Отключение ведомого устройства
  SPI.endTransaction(); // Завершение транзакции SPI

  delay(1000);
}

В этом примере используется SPI для обмена данными между ESP32 (ведущим) и другим устройством (ведомым). Важно отметить, что пины MOSI, MISO, SCLK и CS могут быть любыми GPIO пинами, и их следует подключить к соответствующим пинам ведомого устройства. Пожалуйста, убедитесь, что вы правильно подключили все пины и устройства перед запуском кода.