ILI9341 TFT 240x320 (обновлено: 30 Nov 2022, 07:16:44)


Цветной TFT дисплей на базе чипа ILI9341 с подключением по SPI.

Дисплеи с параллельным подключением не подходят ! 

Имеется поддержка русского языка.

Возможно подключение и дисплеев на базе ST7735S (требуется включить функцию зеркало в дополнительных настройках)


Параметры дисплея:  разрешение по умолчанию 320x240. Выбор режима формата(модели) дисплея (настройка в шестеренке): 0 - 240x320 , 1 - 128x128 , 2 -128x160 , 3 -240x240, 4-160x128, 5- 135x240(ESP32), 6- 320x240, 7 - 320x480, 8 - 480x320.

Существующие размеры экранов 2.2" и 2.4" и выше.

Подключение по интерфейсу SPI. Занимает 4 GPIO.

До 40 строк текста. 65535 цветов.

Русский шрифт есть при установке модуля прошивки "Русский шрифт"


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

ESP8266: MOSI - GPIO13, SCK - GPIO14, CS - GPIO0 (настраиваемый), DC - GPIO2 (настраиваемый).

ESP8266 RTOS: MOSI - GPIO13, SCK - GPIO14, CS - GPIO15, DC - GPIO2 (настраиваемый).

Все ESP32:  MOSI - GPIO23, SCK - GPIO19, CS - GPIO0, MISO - GPIO25, DC - GPIO2. Все выводы настраиваемые.

На некоторых дисплеях возможны вариации названий выводов , A0 - это DC вывод, а SDA - MOSI.

Reset +3.3в. Не забываем подключить питание 3.3в. Включить подсветку - подключаем вывод LED к +3.3 в или к GPIO, если вы хотите управлять ею через ключ.

При использовании готовых плат ESP32+TFT требуется на GPIO reset включить режим Output invert на вкладке GPIO модуля (в будущем планируется дополнительная настройка в шестеренке).


Настройка дисплея: 

При выборе дисплея в настройках строк можно выбрать размер шрифта и цвет текста в 16 битном значении. Необходимо указать шестнадцатеричное число в поле! Основные цвета соответствуют: 03F0 - красный, 000F - зеленый, F800 - синий. Порядок бит: синий[5], красный[6] зеленый[5]. Другие цвета в файле

При включенном дисплее ниже будет отображаться настройки вывода строк и другие параметры. Для отображения информации необходимо выбрать номер строки и выбрать из списка датчик или другой параметр. Датчики и другие функции присутствуют в списке только если они включены в прошивке! При установленной опции конструктор строки появляется возможность формировать свой текст с вставками датчиков и параметров.

В тексте конструктора строк можно указывать цвет текста и цвет фона через макросы !XXXX и #XXXX соответственно. (Пример  !F800 _TIME_ - отобразит на экране время синим цветом) (В шестнадцатеричном формате.)

При использовании в конструкторе строк переноса последующий текст выводится на дисплее на следующей строке. При этом  введенный в начале этой строки текст вида &x изменяет размер шрифта, где х - размер шрифта. Пример: &3TEST выведет текст TEST 3 размером. Данная возможность позволяет вывести все данные используя всего один шаблон конструктора строк. Работает и при установке текста через MQTT. Опция доступна с 30.11.22.

Управление GET запросами:

Вывод текста на дисплей [ip адрес]/lcdmsg?st=X&txt=text. Где X - номер строки. txt - текст, который необходимо вывести.

Дополнительно могут применяться параметры:

&font=X  - размер шрифта.

&color=FFFF - цвета текста. По умолчанию белый.

centr=1 - центровка текста.

poz=Z - столбец.

[ip адрес]/lcdcls - очистка экрана(переиницилизация).


Управление через MQTT

Текст на дисплей необходимо отправить в топик login/hostname/[set/]lcd/lineX.  X - номер строки.

Топик login/hostname/[set/]lcd/font - установка размера шрифта.

Топик login/hostname/[set/]lcd/color - установка цвета текста.

Топик - set добавляется, если включены отдельные топики.

Поддержка вывода изображений (только на ESP32)

При включенной опции поддержки изображений в дополнительных опциях TFT дисплея и включенной опции SD&SPIFFS доступен вывод на дисплей изображений формата JPG и BMP. Поддержка 262 тысячи цветов. Рекомендуется конвертировать изображение в соответствующее разрешение дисплея 320х240 чтобы чрезмерно не нагружать и не замедлять модуль.

Вывод изображения через GET запрос, включает имя файла и координаты:

http://[ip адрес]/imageprint?name=имя_файла&scale=размер&x=X&y=Y

размер может быть от 0 до 7 в зависимости от формата изображения.

Координаты могут указываться как CENTER

Пример http://192.168.1.221/imageprint?name=/SPIFFS/test4.jpg&scale=1&x=15&y=120 

Возможен вывод изображений через Interpreter (скрипты на модуле) по различным условиям, подробности в документации по Interpreter