Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

Универсальные пользовательские блоки.

Пользовательские блоки для вывода информации на дисплеи и индикаторы, управления тачскрином, различными клавиатурами, добавления русских шрифтов для вывода на дисплеи типа HD44780
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
aidar_i
Полковник
Сообщения: 2099
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 297
Откуда: Уфа
Имя: Айдар
Контактная информация:

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#1

Сообщение aidar_i » 19.09.2018{, 22:41}

Здесь обсуждалось создание ПБ, решил выложить отдельно, чтобы было удобно искать. Немного доработал блок.
Дисплеи LCD.ubl
Здесь выложил обновленный вариант блоков

Пример с переключающимися текстом и графикой
Вывод текста и графики_1 LCD12864.flp
В описаниях блока вставил нужную информацию и ссылки.
Пример с OLED дисплеем смотрите тут
Сделал на более старой библиотеке U8glib, тк есть очень много шрифтов с кириллицей, в блок я вставил только часть, но этого предостаточно.
Добавил в библиотеку шрифты с кириллицей:
u8g_my10x14rus
u8g_font_4x6rus
u8g_font_rus5x7
u8g_font_5x8rus
u8g_font_6x10rus
u8g_font_6x12rus
u8g_font_8x13rus
u8g_font_8x13Brus
u8g_font_8x13Orus
u8g_font_9x15rus
u8g_font_9x15Brus
u8g_font_9x18rus
u8g_font_9x18Brus
u8g_font_10x20rus
u8g_font_rusUnifont
Выложил папки с шрифтами, в одной - установленные, в другой - не установленные. Можно добавить, если нужен будет определенный шрифт.
Шрифты кириллица.zip
Отправлено спустя 1 минуту 40 секунд:
Библиотека с кириллицей
U8glib.rar
Добавил в блок вывод растрового рисунка
Вывод текста, растрового рисунка и графики LCD12864.flp
Для скачивания вложений Вы должны быть зарегистрированы.
Последний раз редактировалось aidar_i 17.10.2019{, 12:22}, всего редактировалось 4 раза.

Tarik2511
Рядовой
Сообщения: 17
Зарегистрирован: 04.07.2020{, 21:15}
Репутация: 0
Имя: Тарас

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#41

Сообщение Tarik2511 » 22.07.2020{, 01:16}

aidar_i писал(а):
14.07.2020{, 21:55}
Проект свой выложите, у меня компиляция примера с STM прошла без ошибок

Отправлено спустя 38 минут 10 секунд:
Проверил на дисплее OLED.
СпойлерПоказать
IMG_20200714_234104.jpg
СпойлерПоказать
IMG_20200714_234220.jpg
Отправлено спустя 7 минут 12 секунд:
Вывод текста U8g2lib_STM32.flp
Спасибо за ссылку, очень помогли. На stm работает. Простите что надоедаю вам но не могу понять где прописывать выводы к дисплею ST7920. В старой библиотеке было ясно

//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17

а в новой ничего непонятно

//U8G2_ST7920_128X64_1_SW_SPI u8g2(U8G2_R0, /* clock=*/ 13, /* data=*/ 11, /* CS=*/ 10, /* reset=*/ 8);
//U8G2_ST7920_128X64_1_HW_SPI u8g2(U8G2_R0, /* CS=*/ 10, /* reset=*/ 8);

Если не тяжело могли бы описать как до STM подсоединить ?

Отправлено спустя 18 минут 27 секунд:
Я переделываю блоки ATX в лабораторные и зарядные, не на продажу но для себя и знакомых довольно часто. Китайские вольт-амперметры очень плохие. Делал на LCD1602 и на Atmega328 в паре с ADS1015 (АЦП использую ради шунта низкоомного). А сейчас нужно на stm с его 12bit АЦП, ну и хорошим дисплеем

Отправлено спустя 3 минуты 49 секунд:
Пока это все выглядит стремно и в стадии макетной платы. В подяльшим если концепция будет прациздатна то будет культурная плата со всеми элементами.
Для скачивания вложений Вы должны быть зарегистрированы.

Tarik2511
Рядовой
Сообщения: 17
Зарегистрирован: 04.07.2020{, 21:15}
Репутация: 0
Имя: Тарас

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#42

Сообщение Tarik2511 » 22.07.2020{, 01:51}

В университет делали такие блоки питания различного назначения. И с нормальным LCD дисплеем оноб смотрелось лучше и по данным отображалоб точно.
Для скачивания вложений Вы должны быть зарегистрированы.

aidar_i
Полковник
Сообщения: 2099
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 297
Откуда: Уфа
Имя: Айдар
Контактная информация:

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#43

Сообщение aidar_i » 22.07.2020{, 07:31}

Вот здесь посмотрите. Комментарии типа /* clock=*/ удалите, FLProg на них раньше давал ошибку.

Tarik2511
Рядовой
Сообщения: 17
Зарегистрирован: 04.07.2020{, 21:15}
Репутация: 0
Имя: Тарас

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#44

Сообщение Tarik2511 » 23.07.2020{, 19:22}

aidar_i писал(а):
22.07.2020{, 07:31}
Вот здесь посмотрите. Комментарии типа /* clock=*/ удалите, FLProg на них раньше давал ошибку.

А для этой библиотеки существуют графические пользовательские блоки в FLprog? Блоки библиотеки U8glib не подходят для U8g2lib.

aidar_i
Полковник
Сообщения: 2099
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 297
Откуда: Уфа
Имя: Айдар
Контактная информация:

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#45

Сообщение aidar_i » 23.07.2020{, 22:15}

Я не делал их. Если нужно сделаю, по возможности. Может кто нибудь делал и выложут.

Tarik2511
Рядовой
Сообщения: 17
Зарегистрирован: 04.07.2020{, 21:15}
Репутация: 0
Имя: Тарас

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#46

Сообщение Tarik2511 » 24.07.2020{, 18:32}

aidar_i писал(а):
23.07.2020{, 22:15}
Я не делал их. Если нужно сделаю, по возможности. Может кто нибудь делал и выложут.

А эти блоки можно переделать или это совсем другая топология.
viewtopic.php?f=72&t=4316&p=91770&hilit=st7920#p91770

aidar_i
Полковник
Сообщения: 2099
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 297
Откуда: Уфа
Имя: Айдар
Контактная информация:

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#47

Сообщение aidar_i » 26.07.2020{, 05:55}

Здесь посмотрите.

KulibinOrsk
Лейтенант
Сообщения: 400
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 18
Откуда: Оренбург
Имя: Александр

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#48

Сообщение KulibinOrsk » 02.10.2020{, 11:14}

aidar_i, подскажите SSD1309 можно использовать с этими блоками или это другая тема ?
Есть интерес с ПБ для SSD1309 ...

aidar_i
Полковник
Сообщения: 2099
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 297
Откуда: Уфа
Имя: Айдар
Контактная информация:

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#49

Сообщение aidar_i » 02.10.2020{, 22:45}

Посмотрите весь список в блоке или в библиотеке.

pochabych
Рядовой
Сообщения: 8
Зарегистрирован: 09.11.2021{, 15:12}
Репутация: 0
Имя: Денис

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#50

Сообщение pochabych » 25.11.2021{, 10:59}

Коллеги не сочтите за некроманта но подниму тему. У меня вопрос по блоку вывода картинок. никак нельзя добавить раздел в настройках для того чтобы скармливать блоку код картинки а не лезть за каждым разом в LoopSection и редактировать блок. Сам я увы не справлюсь с блоками :( то что я добавляю дополнительный вход string вызывает только ошибку.

Спасибо.

aidar_i
Полковник
Сообщения: 2099
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 297
Откуда: Уфа
Имя: Айдар
Контактная информация:

Вывод текста и графики на дисплеях типа LCD12864 и OLED (библиотека U8glib).

#51

Сообщение aidar_i » 25.11.2021{, 16:56}

Пожалуйста!
Вывод растрового рисунка LCD12864.flp
Копируете нужный код растрового рисунка внутри фигурных скобок и вставляете в параметры. В коде не должно быть комментарии, если они есть , их удалите!
Перед вставкой тщательно удалите старый код, если останется какой либо "хвост" , будет ошибка компиляции. Можете в редакторе в параметрах удалить значение по умолчанию , тогда всегда будет , при вставке блока в проект, параметр чист.
После компиляции создается код типа:

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

const uint8_t rook_bitmap[] PROGMEM = {   0x00,    0x55,   0x7f,   0x3e,   0x3e,   0x3e,   0x3e,   0x7f };
Внутри фигурных скобок нужный код рисунка.
Для скачивания вложений Вы должны быть зарегистрированы.

Ответить

Вернуться в «Дисплеи, индикаторы и клавиатуры»