
Отладочная плата Ideaspark ESP32 с интегрированным 1.9 дюймовым TFT LCD ST7789 дисплеем построена на базе микроконтроллера ESP-WROOM-32 или IoT платформы «ESP32 DevKit v1», дополнительно на плате размещен разъем для подключения аккумуляторной батареи. Плата удобна для небольших IoT проектов, например, для отображения каких либо показателей, температуры, давления, влажности. Так же на базе платы можно сделать небольшие часы.
С микроконтроллером ESP-WROOM-32 можно ознакомиться в публикации IoT-платформа ESP32 DevKit v1 на базе микроконтроллера ESP-WROOM-32. Модуль ESP-WROOM-32 это «классический» микроконтроллер ESP32, выпущенный в 2016 году на базе двухъядерного процессора Tensilica Xtensa LX6 с максимальной тактовой частотой 240 МГц. На кристалле расположены беспроводные модули Wi-Fi/Bluetooth, датчик Холла и сенсор температуры. Плата входит в самую популярную линейку МК ESP32 среди самодельщиков, так как возможностей хватает “с избытком”.
Помимо блока памяти ROM на 448 КБ и SRAM на 520 КБ (16 КБ для кэша), дополнительно напаяна Flash-память на 16 МБ. Во Flash-памяти удобно хранить различные данные, например, изображения, журнал статистических данных с датчиков.
Беспроводная связь модуля ESP32-WROOM-32 обеспечена стандартами Wi-Fi 2.4 ГГц (802.11 b/g/n) и Bluetooth 4.2 BR/EDR включая BLE (разделяет с Wi-Fi), антенна размещена на самой плате PCB. Усиление сигнала порядка 2dBi, примерно равняется 150м на открытой местности и в помещении — 50 м.
Плата Ideaspark ESP32 1.9» LCD соответствует по функциональности традиционному модулю «ESP32 DevKit v1», с теми же периферийными портами. Интегрированный 1.9 дюймовый TFT LCD дисплей обеспечивает компактное решение без необходимости использования дополнительных проводов для подключения LCD.
Размер платы составляет: 63.8 мм x 31.5 мм.
Габариты платы Ideaspark ESP32 1.9» LCD
Характеристики дисплея:
- Размер: 1.9 дюйма;
- Разрешение: 170(H)RGB x320(V);
- Тип: IPS высокой четкости;
- Плотность пикселей на дюйм: 191 PPI;
- Драйвер: ST7789V3;
- Цвет: многоцветный;
- Яркость: 350 (TYP)Cd/m2;
- Интерфейс подключения: SPI, 8-bit параллельный порт;
- Размер дисплея: 22.695(H)x42.72(V) мм;
- Размер панели: 25.8(H)x49.72(V)x1.43(D) мм;
- Подключение: 30 контактный плоский FPC разъем (0.5mm pitch);
- Подсветка: 3 белых светодиода LED, подключены параллельно;
- Напряжение: 3.3V.
Дисплей TFT ST7789V3 платы Ideaspark ESP32 1.9′ LCD
Углы обзора дисплея TFT ST7789V3 платы Ideaspark ESP32 1.9′ LCD
Распиновка
Распиновка платы Ideaspark ESP32 1.9» LCD
Вид снизу платы Ideaspark ESP32 1.9» LCD
LCD дисплей подключается на следующие контакты:
ESP32 GPIO | Контакт на LCD |
---|---|
D23/GPIO23 | MOSI |
D18/GPIO18 | SCLK |
D15/GPIO15 | CS |
D2/GPIO2 | DC |
D4/GPIO4 | RST |
D32/GPIO32 | BLK |
Для регулирования уровня подсветки дисплея (BLK), контакт D32/GPIO32 необходимо использовать как ШИМ (PWM).
Разъемы и светодиодная индикация
Разъемы и светодиодная индикация платы Ideaspark ESP32 1.9» LCD
Название светодиода | Назначение |
---|---|
PWR | Индикатор питания платформы. |
GPIO2 | Подключен параллельно к контакту DC дисплея. |
К контакту D2/GPIO2 подключен синий светодиод LED и контакт DC дисплея, поэтому каждый раз используя дисплей данный светодиод будет включаться, т.е. контактом не получится отдельно управлять.
Кнопка KEY21 подключена на контакт D4/GPIO4 и контакт RST дисплея, служит для аппаратного сброса (reset) дисплея, при нажатие выполняется подтягивание к земле (GND).
К разъему типа JST MX1.25 2P (контакта) подключается литий-ионный аккумулятор на 3.7V.
Для питания и отладки предназначен порт USB Type-C.
Кнопка EN
Кнопка предназначена для ручного сброса программы — аналог кнопки RESET обычного компьютера.
Кнопка BOOT
Кнопка служит для ручного перевода модуля в режим прошивки.
Программирование
Поддерживается разработка с помощью Arduino IDE на языке C++, MicroPython, C# на базе платформы .NET nanoFramework.
Отладка
Преобразователь USB-UART на микросхеме CH340 обеспечивает связь модуля ESP32-WROOM с USB-портом компьютера. При подключение к ПК — плата Ideaspark ESP32 1.9» LCD определяется как виртуальный COM-порт. Если плата при подключение не определилась, т.е. в списке устройств присутствует «Неизвестное устройство», то необходимо для вашей ОС найти «драйвера для CH340». Для ОС Windows драйвер можно найти в папке \drivers\ самой среды разработки Arduino.
Программирование в Arduino IDE
Вначале необходимо загрузить среду Arduino IDE. Затем в Arduino IDE загрузите профиль платы ESP32, меню Tools > Board > Board Manager…, в окне поиска впишите «esp32» и установите esp32 by Espressif System.
Для установки библиотеки работы с дисплеем, откройте меню Tools > Manage Libraries…, в окне поиска впишите «ST7735» и установите Adafruit ST7735 and ST7789 Library by Adafruit.
Далее, откройте Диспетчер устройств Windows, раздел Порты (COM и LPT), должно появиться устройство USB-SERIAL CH340 (COM3). COM3 — это порт подключения платы, на вашем компьютере номер может быть другим.
Теперь перезапустите среду разработки Arduino IDE с правами Администратора, в противном случае доступ к COM-порту будет запрещен.
В Arduino IDE, на панели Select Board, выбираем COM-порт, в данном случае это COM3.
В диалоговом окне, поле BOARDS, впишем «esp32 dev». Из списка плат выбираем DOIT ESP32 DEVKIT V1 или ESP32 Dev Module.
Откроем в Arduino IDE скетч получение сведений о плате (esp_info.ino) и запустим его. Вывод:
Chip model: ESP32-D0WD-V3 This is ESP32 chip with 2 CPU core(s) at 240 MHz, WiFi/BT/BLE SDK version: v5.4.1-1-g2f7dcd862a-dirty Silicon revision: 300 Core (is build version): 3.2.0 16MB external flash at 80000000 Hz This chip does not have embedded PSRAM Total heap: 379996 Free heap: 337144 Total PSRAM: 0 Free PSRAM: 0
Для работы с дисплеем посредством драйвера ST7789, откроем скетч теста графики (Ideaspark_ESP32_1.9_LCD_graphicstest_st7789.ino). Данный скетч взят из примеров библиотеки Adafruit ST7735, меню File > Examples > Adafruit ST7735 and ST7789 Library > graphicstest_st7789. Адаптируем скетч к дисплею, укажем другие контакты подключения и добавим код включения подсветки:
... #include // Core graphics library #include // Hardware-specific library for ST7789 #include ... #define LCD_MOSI 23 #define LCD_SCLK 18 #define LCD_CS 15 #define LCD_DC 2 #define LCD_RST 4 #define LCD_BLK 32 //Adafruit_ST7789 tft = Adafruit_ST7789(LCD_CS, LCD_DC, LCD_RST); ... Adafruit_ST7789 tft = Adafruit_ST7789(LCD_CS, LCD_DC, LCD_MOSI, LCD_SCLK, LCD_RST); float p = 3.1415926; void setup(void) { //Backlight pinMode(LCD_BLK, OUTPUT); digitalWrite(LCD_BLK, HIGH); // Serial.begin(115200); Serial.print(F("Hello! ST77xx TFT Test")); // Use this initializer (uncomment) if using a 1.3" or 1.54" 240x240 TFT: tft.init(170, 320); // Init ST7789 170x320 ...
Покупка
Плата Ideaspark ESP32 1.9» LCD продается на Aliexpress, продавец ideaspark Store, лот ideaspark® ESP32 16MB Development Board 1.9in ST7789 170×320 TFT LCD Display,WiFi+BL Module,CH340,Type-C for Arduino Micropython, за $10.82 или 976 рублей (20.05.2025) без учета доставки.
Для доставки плата помещается в пластиковый контейнер
Недостатки
- Расстояние между рядами контактов GPIO составляет 1.1 дюйм, в то время как многие другие модули ESP32 имеют ширину 0.9 или 1.1 дюйма. Учитывайте это, если собираетесь вставлять модуль в стандартную макетную плату;
- Синий светодиод LED на контакте GPIO2 и кнопка KEY21 подключенная на контакт D4/GPIO4, бессмысленны и бесполезны, т.к. фактически дублируют вывод GPIO, т.е. можно было и так программно дергать из кода;
- На плате нет индикации заряда аккумуляторной батареи, так же не подведен контакт GPIO для считывания напряжения батареи (но это неточно).
Итог
Данная плата отличный вариант для реализации различных проектов Интернета вещей (IoT). Ее можно использовать для отображения состояния сетевого соединения, информации о мониторинге, уровней мощности и других соответствующих данных. Кроме того, она подходит для создания Интернет-погодных станций, графических плоттеров, мониторов данных и других подобных приложений. Плата выгодно отличается от других, удобством использования уже интегрированного дисплея и низкой стоимостью.
Схемы и datasheet доступны в репозитории GitHub devdotnetorg/ESP32-WROOM-32.
Литература
- ESP32 Pinout Reference_ Which GPIO pins should you use? — Random Nerd Tutorials
- ESP32 Pinout Reference — Last Minute Engineers
- ESP32 GPIO (Digital Inputs & Digital Outputs) — Arduino Tutorial
- ESP32 Digital Inputs and Digital Outputs (Arduino IDE) – Random Nerd Tutorials
- ESP32_ чипы, модули, платы… – kotyara12.ru
- ESP32-WROOM-32E/UE :: datasheet на русском (перевод) – kotyara12.ru
- ESP32 — Wikipedia