Подключение дисплея ST7735 к ESP32

Цветной дисплей 128×160

ST7735 к ESP32 — по SPI: SCK (GPIO18), SDA/MOSI (GPIO23), CS, DC и RST на свободные выводы, питание 3,3 В. Дисплей 3,3-вольтовый, как и ESP32, преобразователь уровней не нужен.

Схема подключения дисплея ST7735 к ESP32

TFT ST7735 1,8″ESP32
CSGPIO5
DCGPIO2
RSTGPIO4
SCKGPIO18
SDAGPIO23
VCC3V3
GNDGND

Схема из примера «TFT ST7735: цвет и фигуры».

TFT ST7735: цвет и фигуры

Открыть пример целиком

Выводы TFT ST7735 1,8″

ВыводНазначение
CSвыбор дисплея
DCкоманда/данные (иногда A0)
RSTсброс
SCKтакт SPI
SDAданные SPI (MOSI)
VCCпитание
GNDобщий провод

Код для ESP32

#include <Adafruit_GFX.h>
#include <Adafruit_ST7735.h>

const int CS = 5, DC = 2, RST = 4;
Adafruit_ST7735 tft(CS, DC, RST);

void setup() {
  tft.initR(INITR_BLACKTAB);   // 128x160, чёрная плёнка на шлейфе
  tft.fillScreen(ST77XX_BLACK);

  tft.fillRect(10, 10, 50, 30, ST77XX_RED);
  tft.fillRect(70, 10, 50, 30, ST77XX_GREEN);
  tft.fillCircle(64, 80, 25, ST77XX_BLUE);

  tft.setTextColor(ST77XX_WHITE);
  tft.setTextSize(2);
  tft.setCursor(12, 120);
  tft.print("PinPort");
}

void loop() {
  // Бегущая полоса внизу экрана: видно, что кадр обновляется, а не
  // нарисован один раз.
  static int x = 0;
  tft.fillRect(0, 145, 128, 8, ST77XX_BLACK);
  tft.fillRect(x, 145, 20, 8, ST77XX_YELLOW);
  x = (x + 4) % 128;
  delay(40);
}

Скетч можно править и запускать в симуляторе без платы и установки среды.

Что учесть на ESP32

Частые ошибки при подключении к ESP32

Другие детали для ESP32