SpotPear ESP32-S3-LCD-0.85-SD

SpotPear · ESP32-S3-LCD-0.85-SD / ESP32-S3-LCD-0.85-SD-M

Показывает данные на миниатюрном экране.

Автор: SLDV LAB

Опубликовано · Обновлено

СложностьСредне
Проекты с компонентом

О МОДУЛЕ

Что делает ESP32-S3-LCD-0.85-SD / ESP32-S3-LCD-0.85-SD-M

ESP32-S3-LCD-0.85-SD объединяет микроконтроллер, маленький квадратный экран и слот microSD. Подходит для компактного индикатора, часов, учебного интерфейса или устройства, которое показывает изображения с карты памяти. ЖК-экран уже подключён к контроллеру на плате, поэтому для первого запуска не нужна внешняя проводка дисплея.

Одна карточка описывает два исполнения SpotPear: ESP32-S3-LCD-0.85-SD без припаянных штырей и ESP32-S3-LCD-0.85-SD-M с припаянными штырями. Суффикс -M относится к монтажу разъёмов. В комплект поставки карта microSD не входит. Установленный на исходном фото чип имеет маркировку ESP32-S3FH4R2; более короткое ESP32-S3FH4 в тексте продавца не описывает полностью его память.

ESP32-S3 использует архитектуру Xtensa LX7. В одной рекламной иллюстрации ошибочно указано RISC-V, а на цветной распиновке контакт IO21 ошибочно подписан IO12. В карточке применена оригинальная электрическая схема с отдельными GP12 и GP21. GPIO45 и GPIO46 являются strapping-выводами: внешняя схема не должна задавать им неверные уровни во время сброса. GPIO46 поддерживает ввод и вывод согласно документации ESP32-S3.

Примеры производителя требуют конкретного набора файлов и версий библиотек. В связанном демонстрационном проекте драйвер экрана называется Display_ST7789.h, хотя руководство платы указывает GC9107. Это имя исходного файла, а не основание переименовать контроллер дисплея. Для первого запуска используйте полный проект RGB_LCD и его зависимости; перенос одиночного файла в другой проект не заменяет настройку драйвера. Поддержка LVGL и MicroPython зависит от выбранной прошивки и драйверов, она не означает готовность любого примера без адаптации.

Характеристики

Микроконтроллер
ESP32-S3FH4R2, Xtensa LX7, два ядра до 240 МГц
Flash в корпусе чипа
4 МБ
PSRAM в корпусе чипа
2 МБ
Интерфейс памяти
Quad SPI Flash и Quad SPI PSRAM; не OPI PSRAM
Внутренняя SRAM
512 КБ
Встроенный дисплей
IPS LCD 0,85″, 128×128, GC9107 по руководству производителя, SPI
RGB-светодиод
Один WS2812B на GPIO13
Карта памяти
microSD; в демонстрации используется SD_MMC, 1-битный режим
Выведенные GPIO
GPIO2, GPIO12, GPIO21, GPIO43–48; GPIO45/46 — strapping
Беспроводная связь
Wi-Fi 2,4 ГГц 802.11 b/g/n; Bluetooth 5 LE; керамическая антенна
Кнопки
RST и BOOT; BOOT замыкает GPIO0 на GND
Размер
По размерному рисунку заднего вида 17,85 × 22,40 мм с выступом USB-C; участок PCB до разъёма 20,94 мм
Интерфейс
SPI, UART, Wi-Fi, Bluetooth
Питание модуля
Первый запуск: 5 В через USB-C и кабель данных. GPIO работают с логикой 3,3 В; подавать 5 В на GPIO нельзя. Вывод 3V3 связан с выходом бортового регулятора. Не соединять несколько источников питания без проверки схемы. Устанавливать и извлекать microSD при снятом питании, если прошивка не обеспечивает безопасное отключение.

ПРАКТИКА

Подключение

Схема подключения
Контакт модуляКонтакт платыНазначение
USB-CВстроенный USB ESP32-S3; GPIO19 D− / GPIO20 D+Питание и прошивка через native USB; это не отдельный USB–UART мост.
LCD MOSI / SCLK / CS / DC / RST / BLGPIO39 / GPIO40 / GPIO41 / GPIO42 / GPIO38 / GPIO14Уже соединены на плате. Значения согласованы со схемой и Display_ST7789.h из связанного SpotPear demo.
microSD CLK / CMD / DAT0 / DAT3GPIO17 / GPIO16 / GPIO18 / GPIO15SD_MMC в 1-битном режиме использует CLK, CMD и DAT0; в demo GPIO15/DAT3 удерживается в HIGH. Имена SD_MOSI/SD_MISO из SPI-разметки не меняют режим библиотеки.
WS2812B DINGPIO13Один адресный RGB-светодиод; обычное переключение digitalWrite не задаёт цвет.
BOOT / RSTGPIO0 / CHIP_PUПри проблеме загрузки удерживать BOOT во время сброса, затем отпустить; RST перезапускает чип.
P1, контакты 1–6 по схемеUSB VCC / GND / 3V3 / GPIO2 / GPIO12 / GPIO21На заднем виде с USB-C сверху это левый ряд сверху вниз. Последний контакт действительно GPIO21, не второй GPIO12.
P2, контакты 1–6 по схемеGPIO48 / GPIO47 / GPIO46 / GPIO45 / GPIO44 / GPIO43На заднем виде с USB-C сверху правый ряд сверху вниз идёт в обратном порядке, от GPIO43 до GPIO48. GPIO45/46 — strapping; после старта GPIO46 поддерживает ввод/вывод.

Подходит для ESP32, Arduino. Выберите контакты по документации своей платы.

ВАШ ПРОЕКТ · ВАШ ДАТЧИК

Интегрируйте модуль с ChatGPT

Скопируйте запрос в ChatGPT. Укажите свою плату и среду разработки — получите подключение и код для своего проекта.

Помоги интегрировать SpotPear ESP32-S3-LCD-0.85-SD или -M в мой проект. Уточни задачу, точный вариант, маркировку чипа, версию Arduino-ESP32/ESP-IDF и нужную периферию. Опорное исполнение имеет ESP32-S3FH4R2, 4 МБ Quad Flash и 2 МБ Quad PSRAM. Это Xtensa LX7; рекламное RISC-V неверно.

LCD GC9107 по руководству: MOSI39, SCLK40, CS41, DC42, RST38, BL14. microSD: CLK17, CMD16, DAT0=18, DAT3=15; официальный demo использует SD_MMC в 1-битном режиме и удерживает GPIO15 в HIGH. WS2812B на GPIO13. Вывод P1.6 — GPIO21; не переноси ошибочное IO12 из рекламного рисунка. Не меняй загрузочные уровни GPIO45/46 без анализа strapping.

Начни с полного RGB_LCD из связанного производителем репозитория и Arduino-ESP32 3.0.3, затем добавляй SD и сеть по одному. Имя Display_ST7789.h сохранено в исходном demo и само по себе не доказывает другой контроллер панели. Подготовь подключение, зависимости, минимальный пример с обработкой ошибок и контрольные проверки. Не используй примеры от Waveshare ESP32-S3-LCD-0.85 с аудиокодеком и не подменяй плату LILYGO T-QT. Укажи, что проверено по исходникам, а что действительно испытано на плате.

Библиотеки

Установите библиотеку для своей среды и откройте пример из её документации.

Что именно прописать

Arduino board
ESP32S3 Dev Module

Целевая плата ESP32-S3; для конкретного core проверить USB и параметры памяти.

Arduino-ESP32
3.0.3

Версия, рекомендованная руководством SpotPear. Совместимость с другими версиями требует отдельной проверки.

Flash / PSRAM
4 MB Flash; QSPI PSRAM (2 MB)

Для маркировки ESP32-S3FH4R2. Не выбирать OPI PSRAM как у N16R8-плат.

LCD wiring
MOSI=39; SCLK=40; CS=41; DC=42; RST=38; BL=14

Встроенная разводка, а не внешние перемычки. Драйвер и offset брать из exact-board demo.

RGB LED
WS2812B; GPIO13; NUM_LEDS=1

В demo применена библиотека FastLED из комплектного набора зависимостей.

microSD
SD_MMC.setPins(17, 16, 18); SD_MMC.begin("/sdcard", true)

1-битный SDMMC; перед началом установить GPIO15 в OUTPUT/HIGH. Ошибки setPins/begin и отсутствие карты обрабатывать явно.

LCD demo include
#include "Display_ST7789.h"

Название файла из полного проекта RGB_LCD, включая соответствующий .cpp. Не заменять библиотекой для произвольного ST7789.

Экран и RGB, фрагмент внутри полного RGB_LCD

cpp
#include "Display_ST7789.h"
#include "WS2812B.h"

void setup() {
  LCD_Init();
  Set_Backlight(50);
  WS2812B_Init();
  LCD_FillScreen(RGB565(0, 0, 255));
  WS2812B_SetColor(0, 0, 20);
}

void loop() {
  delay(1000);
}

Заменяет .ino в полном каталоге RGB_LCD зафиксированного demo. Нужны его .h/.cpp и FastLED; это не автономный скетч без зависимостей. Ожидаемый результат — синий экран и слабый синий RGB. Вызовы сверены с исходниками; компиляция и проверка на физической плате при подготовке не выполнялись.

microSD, минимальный самостоятельный скетч

cpp
#include <Arduino.h>
#include <SD_MMC.h>

void setup() {
  Serial.begin(115200);
  delay(1500);
  pinMode(15, OUTPUT);
  digitalWrite(15, HIGH);
  if (!SD_MMC.setPins(17, 16, 18)) {
    Serial.println("SD pin configuration failed");
    return;
  }
  if (!SD_MMC.begin("/sdcard", true)) {
    Serial.println("SD mount failed");
    return;
  }
  if (SD_MMC.cardType() == CARD_NONE) {
    Serial.println("No SD card");
    return;
  }
  Serial.printf("SD capacity: %llu MiB\n",
                SD_MMC.cardSize() / (1024ULL * 1024ULL));
}

void loop() {
  delay(1000);
}

Для этой платы и Arduino-ESP32 3.0.3; использует SDMMC 1-bit с распиновкой из vendor demo. Для native USB Serial включить USB CDC On Boot. Карта должна быть доступна библиотеке; при ошибке проверить формат, питание и установку карты. Пример не форматирует карту и не записывает файлы. API и GPIO сверены статически, аппаратный тест не проводился.

Проекты с этим компонентом

Все проекты

Связанные проекты пока не опубликованы.

Связанные материалы и компоненты