Найти в Дзене
Кроконяшка

Подключение экрна TFT LCD Shield на драйвере ILI9327 Special к ESP32 DEVKIT

Всем привет, в этой статье расскажу о подключении экрана TFT LSD Shield на драйвере ILI9327 (240 * 400) к микроконтроллеру ESP32 DEVKIT, и о всех проблемах с которыми столкнулся. Изначально дисплей предназначен для подключения к Arduino Uno, MEGA2560, Arduino Leonardo и на этих платах он запускается без проблем. Причина по которой вынужден был использовать другой микроконтроллер связанна с ограничением размеров и необходимостью интерфейсов связи WI-FI и bluetooth. Законченное устройство дополнительно оснащено (Li-ion) аккумулятором, платой зарядки TP4056, повышающим DС-DС преобразователем с RLC фильтром. Заряд аккумулятора отслеживается с помощью делителя напряжения и АЦП (пни SVP).

Экран оснащен:
1. датчикам температуры подключаемый по протоколу I2C пины SCL и SDA (за ненадобностью подключать не стал).
2. картридером под карту памяти micro sd подключаемый к разъёму ICSP пины SD_CS к GPIO22, MISO к GPIO19, MOSI к GPIO23, CLK к GPIO18

-2

Подключено все по следующей схеме, схему нарисовал в программе Fritzing.

-3
Перед загрузкой исполняемой программы необходимо отсоединить разъем экран LCS_D0 от пина 1012 на ESP32, загрузить программу, отсоединить питание и переподключить соединение обратно.
Я сделал на этом проводе джампер, для быстрого разъединения

Без отсоединения этого контакта программа не грузится, с чем это священно не разобрался.

-4
По для загрузки использовал самое распространенное, а именно Arduino IDE, с установленным расширением для программирования микроконтроллеров типа ESP32, об установки этого расширения есть много инструкции в интернете ССЫЛКА ВОТ.

Для работы данного дисплея нужно несколько библиотек основная это MCURIEND_kbv следующие это SPI и adafruit_GFX. Так-же рекомендую посмотреть библиотеку TFT_eSPI, если возникнут какие-нибудь проблемы.
Пример кода, а
также полезная ссылочка.

-5

Первоначально рекомендую из библиотеки MCURIEND_kbv взять код graphictest_kbv и переназначить порты, как на картинке сверху. Загрузив данный код не забыв отключить пин LCS_D0, отключите устройство от питания подключив пин обратно и подав питание экран должен будет ожить. Примерно таким же образом можно подключать и множество других экранов не предназначенных для работы с данным типом микроконтроллеров.