В данный момент прошивка поддерживает 3 вида дисплеев:
1. LCD 1602,1604,2004 -с соответсвующим количеством столбцов и строк 16х2,16х4 и 20х4. Подключение через I2C переходник на базе PCF8574. Используется встроенный знакогенератор - соответственно русского шрифта нет.
2. OLED SSD1306 - разрешение 128x64. Существующие размеры экранов 0.96" и 1.2". Подключение по интерфейсу I2C. До 8 строк текста. Русский шрифт есть при установке модуля прошивки "Русский шрифт" и "Русский шрифт 2"
3. Цветной TFT дисплей ILI9341 - разрешение 320х240. Существующие размеры экранов 2.2" и 2.4" и выше. Подключение по интерфейсу SPI. Занимает 4 GPIO . До 40 строк текста. 65535 цветов. Русский шрифт есть при установке модуля прошивки "Русский шрифт 2"
Подключение дисплеев
Дисплей LCD 1602,1604,2004 необходимо подключить через переходник на базе микрохсемы PCF8574.
Дисплеи LCD 1602,1604,2004 и OLED подключаются на шину I2C - выводы шины I2C назначаются на вкладке Hardware.
Необходимо подтянуть I2C шину к 3.3в резисторами 4.7кОм. При успешном подключении устройств они должны быть видны в сканере I2C. Адрес OLED дисплея должен быть 0x3С. Адрес LCD зависит от маркировки PCF8574 и установленных перемычек.
Подключение TFT дисплея: MOSI - GPIO13, CLK -GPIO 14, CS - GPIO 0, DC - GPIO2. Reset - +3.3в. Включить подсветку - подключаем вывод LED к +3.3в.
Питание всех дисплеев должно быть 5вольт !
Настройка дисплеев
Настройка дисплеев производится на вкладке Display. Для дисплеев LCD 1602,1604,2004 необходимо указать I2C адрес.
Для включения подсветки необходимо в настройках включить галку Enable backlight (кроме TFT).
При включенном дисплее ниже будет отображатся настройки вывода строк и другие параметры. Для отображения информации необходимо выбрать номер строки и выбрать из списка датчик или другой параметр. Датчики и другие функции присутсвуют в списке только если они включены в прошивке !
Для TFT дисплея можно выбрать размер шрифта и цвет текста в 16 битном значении. Необходимо указать шеснадцатиричное число в поле ! Основные цвета соответсвуют: 03F0-красный 000F- зеленый, F800-синий.
Управление GET запросами:
Вывод текста на дисплей выводится командой IP_Адрес/lcdmsg?st=X&txt=text. Где X -номер строки. txt- текст, который необходимо вывести.Дополнительно могут применятся параметры:
&font=X - указание шрифта для OLED и TFT. Для OLED дисплея доступен дополнительно большой шрифт 2. А так же шрифт 3 для вывода русского текста в английской раскладке при установке данного модуля прошивки.
&color=FFFF - Указание цвета текста для TFT дисплея. По умолчанию белый.
¢er=1 - включение центровки текста (пока работает только на TFT)
Включение/выключение подсветки IP_Адрес/display?led=1
Управление через MQTT
Текст на дисплей необходимо отправить в топик login/hostname/lcd/lineX . Где X -номер строки.
Топик login/hostname/lcd/light - управление подсветкой для LCD и OLED.
Топик login/hostname/lcd/inverse - инверсия изображения для OLED.
Топик login/hostname/lcd/font -установка размера шрифта для OLED и TFT.
Топик login/hostname/lcd/color -установка цвета текста для TFT.
Управление через планировщик заданий(Scheduler)
При установленом модуле планировщика заданий доступно включение/выключение подсветки дисплея по времени. Для этого необходимо на вкладке Scheduler модуля выбрать задачу display и указать в полях время , дни недели , state - 1 для включения дисплея, state - 0 для выключения дисплея.
У TFT дисплея подсветкой необходимо управлять отдельным выводом GPIO , подключенный к выводу LED дисплея.
Конструктор строк
Доступен конструктор строк, который позволяет задать свою строку текста на дисплеи, с выводом всех данных внутри этого текта. Для вывода данных необходимо подставить макросы. Длина строки не более 99 символов. Русская буква занимает два символа. Выбор вывода на дисплей находится на вкладке Display.
Поддерживаемые макросы в данный момент находятся в таблице (требуется авторизация)
Макросы TFT дисплея: Можно указывать цвет текста и цвет фона через макросы !XXXX и #XXXX сотвественно.(В шестнадцатеричном формате.)
Опция достаточно много использует ресурсов, следите за этим..
Остальные данные могут быть добавлены в будущем. По запросу в чате можно добавить недостающие данные.