Страница 1 из 1

Блоки форматирования строк для дисплеев

Добавлено: 09.01.2021{, 18:57}
Labu559
В проекте представлены два блока:
1) Простой блок
Объединяет две строки в одну (операция конкатенации), дополняет пробелами до разрядности дисплея (двойное выравнивание), делает лишней операцию очистки дисплея.
2) Расширенный блок
Объединяет две строки в одну (операция конкатенации), дополняет символами (задаются в параметрах пользователя) до разрядности дисплея (двойное выравнивание), при превышении сумы длины строк выводит ошибку- ErrToBig, и также делает лишней операцию очистки дисплея- в штатном блоке LCD HD44780 это строки:

Код: Выделить всё

if (_isNeedClearDisp1) 
    {
        _lcd1.clear();
        _isNeedClearDisp1= 0;
    }
которые вызывают мерцание дисплея, и можно их закомментировать/удалить вручную перед компиляцией в Arduino IDE.
Описание в блоках присутствует.
Блоки:
-предназначены для применения с 7-ми сегментными, символьными, матричными, графическими, LED, VFD, LCD, Oled, TFT и др. дисплеями.
-настраиваются в Параметрах Пользователя по разрядности (макс.колличеству знаков/знакомест в строке дисплея).
Имеют смысл применения для дисплеев 8+ знакомест, потому ограничиваются этим минимумом в блоках.
Так это выглядит на LCD1602.Показать
LCD_DoubleAligment.png
Блоки находятся и их можно сохранить в программе из демопроекта ниже. Всем Удачи!
Для символьных дисплеев на чипе HD44780 (клонах) с загруженными пользовательскими знаками (кириллическими буквами) блок нуждается в более тщательном тестировании, выкладываю отдельно, желающих приобщиться- приветствую.

Блоки выравнивания строк для дисплеев

Добавлено: 09.01.2021{, 19:08}
Di123
чем он отличается от блока сложения строк ?
вы сделали на картинке тоже самое
взяли строчку пресуре и сложили её со строчкой показания + бар
посути всё что делает родной блок

Блоки выравнивания строк для дисплеев

Добавлено: 09.01.2021{, 19:13}
AlexCrane
Di123, Между строчками прописываются пробелы или символы до общей длины в N символов

Блоки выравнивания строк для дисплеев

Добавлено: 09.01.2021{, 19:14}
Labu559
Di123 писал(а):
09.01.2021{, 19:08}
чем он отличается от блока сложения строк ?
вы сделали на картинке тоже самое
взяли строчку пресуре и сложили её со строчкой показания + бар
посути всё что делает родной блок
Именно для Вас пускай будет загадкой по крайней мере пока не прочитаете описание или не столкнётесь с проблемой как здесь. Мне добавить нечего, что сделал- описал.

Блоки выравнивания строк для дисплеев

Добавлено: 09.01.2021{, 20:19}
Di123
Labu559, ну так эта проблема у меня тоже была очень давно когда я только переменные использовал ещё на 5 версии
тогда я тоже гасил их через включение платы потом через переключатель а потом перешол на клемы и проблем нистало никаких

Блоки форматирования строк для дисплеев

Добавлено: 03.06.2022{, 07:44}
agronom
с русскими буквами либо пустая строчка либо китайские ероглифы выходит

Блоки форматирования строк для дисплеев

Добавлено: 03.06.2022{, 11:34}
Dryundel
agronom писал(а):
03.06.2022{, 07:44}
с русскими буквами либо пустая строчка либо китайские ероглифы выходит
agronom, Labu559, попробуйте заменить функцию length() на функцию из блока Длина строки RUS+ENG