ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

Пользовательские блоки для вывода текста.

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

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#1

Сообщение aidar_i » 05.02.2019{, 13:04}

Пользовательские блоки (ПБ) для вывода текста для дисплеев на SSD1306 и SH1106 I2C. Можно допилить главный блок и под SPI, по аналогии. Блоки работают с ESP8266 и с ESP32.
Пример с блоками :
ESP8266_Oled_SSD1306_display2.flp
(170.36 КБ) 1248 скачиваний
Пример с ПБ для переноса длинных текстов в следующую строку.Если заданная строка шире указанной ширины текст будет перенесен на следующую строку через пробел или тире.
ESP8266_Oled_перенос текста.flp
(66.77 КБ) 500 скачиваний
ЗДЕСЬ изменил главные блоки, появился выбор размера дисплея 128х32.

Пример Бегущая строка
Библиотека измененная под кириллицу, по рекомендациям Vsevolod61 из форума https://esp8266.ru/forum/
esp8266-oled-ssd1306.rar
(313 КБ) 1292 скачивания
Архив в zip в 22 сообщении.

Добавил еще 3 шрифта,
DialogRus_Italic_10,
ArialRus_Italic_14,
ArialRus_Italic_26
замените в библиотеке файл:
OLEDDisplayFonts_rus.h
(415.11 КБ) 820 скачиваний
Добавил блок очистки выбранного участка дисплея сюда.

Скетч добавил в примеры библиотеки (SSD1306Cyrillic_text_output).
Прочитайте и это viewtopic.php?p=64141#p64141

Подключение OLED к ESP-01 viewtopic.php?p=80849#p80849.
Блок с выводом графика ТУТ.
FontEditor.rar
(376.83 КБ) 271 скачивание
Видео про FontEditor
СпойлерПоказать
Последний раз редактировалось aidar_i 08.01.2022{, 18:29}, всего редактировалось 29 раз.

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

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#81

Сообщение aidar_i » 26.01.2020{, 18:24}

У меня нет этого датчика, я поставил кнопку и нажимая получал данные. Датчик запитайте с другого источника.
Проверял в последней версии программы на внешней иде 1.8.10. Попробуйте на 2.4.2 плате есп проверить.
Обновлял ОТА, была ошибка компиляции. Модуль Вемос мини про.
Последний раз редактировалось aidar_i 26.01.2020{, 21:21}, всего редактировалось 1 раз.

edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20.09.2019{, 11:38}
Репутация: 65
Имя: Эдуард

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#82

Сообщение edyapd » 26.01.2020{, 18:40}

aidar_i писал(а):
26.01.2020{, 18:24}
Попробуйте на 4.2.4 плате есп проверить
На 2.6.2 пока проблем не замечал. Только надо модуль выбирать не тот, который FLProg по умолчанию ставит, а MCU 1.0
Последний раз редактировалось edyapd 26.01.2020{, 21:36}, всего редактировалось 1 раз.

Mozgoklui
Сержант
Сообщения: 109
Зарегистрирован: 11.10.2019{, 23:19}
Репутация: 0
Имя: Виталий

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#83

Сообщение Mozgoklui » 26.01.2020{, 20:04}

aidar_i, я тоже поставил кнопку, на D4 проводок и чиркал им по пину 3.3v. Скетч вот такой сделал
111_2.flp
(94.42 КБ) 82 скачивания
, не работает. Вроде в ребут не бросается, но при "нажатии" на экране ничего не появляется.
edyapd, Flprog версии 5.3.0, IDE 1.8.9. По поводу 4.2.4 или 4.6.2 непонятки. Это где смотреть? Всё что я нашел это в менеджере плат версия esp 2.5.2

edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20.09.2019{, 11:38}
Репутация: 65
Имя: Эдуард

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#84

Сообщение edyapd » 26.01.2020{, 20:32}

Mozgoklui писал(а):
26.01.2020{, 20:04}
на D4 проводок и чиркал им по пину 3.3v
Это вы так кнопку имитировали? Так кнопку надо на землю замыкать, к плюсу она и так подтянута.
Версия 2.5.2 не очень хорошая.
Самый простой выход для вас я вижу скачать одну из этих версий FLProg Windows64 или Windows32.
Они без установки, просто положите их в любую папку. Единственное, это надо будет ещё добавить библиотеки, которые вы используете.
И ещё один очень важный момент, после того, как вы сохраните в версии 6, в 5-ой версии проект может не открыться, так что сделайте сразу бэкап своих проектов.

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

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#85

Сообщение aidar_i » 26.01.2020{, 21:16}

:smile390:
Mozgoklui писал(а):
26.01.2020{, 20:04}
не работает
Если хотите, чтобы помогли выложите всё: проект, настройки платы, подключения с фото, версии программ и тп.

Отправлено спустя 51 секунду:
Не может он просто не работать. Где-то допускаете ошибку.
Плата 2.4.2.

Mozgoklui
Сержант
Сообщения: 109
Зарегистрирован: 11.10.2019{, 23:19}
Репутация: 0
Имя: Виталий

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#86

Сообщение Mozgoklui » 27.01.2020{, 00:09}

aidar_i, edyapd, спасибо вам за помощь, завтра смахну все со стола, возьму новые детали и начну с начала. Обязательно выложу всё сюда. Стол и полкомнаты завалены полуразобранными электроигрушками, что очень нервирует жену)) Надо дособирать наконец)

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

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#87

Сообщение aidar_i » 28.01.2020{, 00:04}

Mozgoklui писал(а):
26.01.2020{, 20:04}
не работает
Попробуйте BIN файл загрузить по адресу 0х00000
pr20.ino.rar
(219.01 КБ) 73 скачивания
Отправлено спустя 7 минут 5 секунд:
Mozgoklui писал(а):
26.01.2020{, 20:04}
Скетч вот такой сделал
111_2.flp
Зачем одновременно включаете и выключаете дисплей?

Mozgoklui
Сержант
Сообщения: 109
Зарегистрирован: 11.10.2019{, 23:19}
Репутация: 0
Имя: Виталий

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#88

Сообщение Mozgoklui » 29.01.2020{, 19:29}

aidar_i, я начал сначала, по совету Эдуарда скачал позднюю бету и дело сдвинулось. Больше нет этого рестарта циклического.
Сейчас завис над проблемой одновременного вывода нескольких показателей датчиков на один экран. То есть с чисткой экрана не могу подружиться, один показатель обновляясь чистит весь экран, затем другой. Отображаются по очереди. Понятно, что не в блоках дело, а в моей логике :)

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

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#89

Сообщение aidar_i » 29.01.2020{, 21:37}

Тут важен порядок компиляции блоков. Если чистка блоков оказывается не там , где нужно, то изображения может не быть. Блок очистки должен быть перед блоком вывода текста, чтобы стереть старую информацию. Не только на проекте визуально, а после нажатия кнопки - порядок компиляции. А то часто, он хоть стоит впереди, после компиляции оказывается после нужного блока.
Попробуйте использовать несколько блоков очистки.
Ps: чтобы блоки очистки оказывались там где нужно, их входа подключать через переменную.
Последний раз редактировалось aidar_i 19.07.2021{, 20:37}, всего редактировалось 2 раза.

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

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#90

Сообщение aidar_i » 08.02.2020{, 15:59}

Вывод символа замка: открытого и закрытого
ESP8266_Oled_XBM замок.1flp.flp
(106.59 КБ) 221 скачивание
СпойлерПоказать
WhatsApp Image 2020-02-08 at 17.56.25.jpeg
СпойлерПоказать
WhatsApp Image 2020-02-08 at 17.56.32.jpeg

Аватара пользователя
cmept-27
Сержант
Сообщения: 270
Зарегистрирован: 08.12.2016{, 15:51}
Репутация: 76

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#91

Сообщение cmept-27 » 05.09.2021{, 09:49}

Чуток переделал, малость дополнил
Библиотеки как в шапке
esp8266-oled-ssd1306.zip
(339.96 КБ) 203 скачивания
Блоки
OLED_ESP32.ubl
(810.12 КБ) 244 скачивания
Пример 1
Пример 1.flp
(1.49 МБ) 238 скачиваний
IMG_20210905_234844.jpg
IMG_20210905_234844.jpg (38.45 КБ) 3003 просмотра
IMG_20210905_234854.jpg
IMG_20210905_234854.jpg (36.67 КБ) 3003 просмотра

Пример 2(Стрелочные индикаторы вольтметр и амперметр)
Пример 2.flp
(671.01 КБ) 191 скачивание
Последний раз редактировалось cmept-27 05.09.2021{, 16:55}, всего редактировалось 1 раз.
OK

Аватара пользователя
cmept-27
Сержант
Сообщения: 270
Зарегистрирован: 08.12.2016{, 15:51}
Репутация: 76

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#92

Сообщение cmept-27 » 05.09.2021{, 13:26}

IMG_20210906_000322.jpg
IMG_20210906_000322.jpg (34 КБ) 3003 просмотра
Пример 3 (Аналоговые часы)
Пример 3.flp
(346.01 КБ) 109 скачиваний
Отправлено спустя 4 часа 45 минут 26 секунд:
IMG_20210906_010634.jpg
IMG_20210906_010634.jpg (33.94 КБ) 3000 просмотров
Пример 4
Пример 4.flp
(514.43 КБ) 106 скачиваний
OK

Tihon
Рядовой
Сообщения: 2
Зарегистрирован: 26.05.2021{, 09:58}
Репутация: 0
Имя: Сергей

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#93

Сообщение Tihon » 27.10.2021{, 14:55}

Здравствуйте, Айдар. Обращаюсь к Вам за советом, что не так. Пытаюсь вывести на OLED 0.96 текст используя ваши блоки. Тля тестирования
взял ваш пример.С NodeMcu V3 все получается, а с ESP-01 нет. Вроде и компиляция проходит , и загружается в ESP-01 , а на экране ничего.
FLprog.jpg
Заранее благодарю.
Вложения
Arduino2.jpg
Arduino1.jpg
OLED.JPG

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

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#94

Сообщение aidar_i » 27.10.2021{, 21:59}

Tihon писал(а):
27.10.2021{, 14:55}
загружается в ESP-01 , а на экране ничего.
У Вас память флеш 1МБ?
Проект , который загружали , выложите со своего компа или код.

Tihon
Рядовой
Сообщения: 2
Зарегистрирован: 26.05.2021{, 09:58}
Репутация: 0
Имя: Сергей

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#95

Сообщение Tihon » 28.10.2021{, 07:43}

Да флеш 1МБ.

Отправлено спустя 1 час 51 минуту 44 секунды:
Айдар,вопрос решен. В скетче в 7-й строке вместо SSD1306Wire display(0x3c, 4, 5); прописал SSD1306Wire display(0x3c, 2, 0); и все заработало
Вложения
PROB2.flp
(244.44 КБ) 74 скачивания

ARTEMM
Рядовой
Сообщения: 37
Зарегистрирован: 05.05.2021{, 21:31}
Репутация: 0
Имя: Артём

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#96

Сообщение ARTEMM » 28.10.2021{, 16:21}

добрый день с esp8266 все палучилось а вот esp 32 не могу подружить с вашими блоками в ардуино айди постоянно велетают ошибки обьясните пожалуста по подробней
Вложения
large_DPC455-6.jpg
вот эта есп32

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

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#97

Сообщение aidar_i » 29.10.2021{, 02:02}

ARTEMM писал(а):
28.10.2021{, 16:21}
добрый день с esp8266 все палучилось а вот esp 32 не могу подружить с вашими блоками в ардуино айди постоянно велетают ошибки обьясните пожалуста по подробней
Выкладываете свой проект, который компилировали, скриншоты настройки платы, ошибок, скетч с Ардуино иде.
У Вас дисплей там IPS ST7789V 1,14 дюйма, Вам в другую тему нужно.

Аватара пользователя
karen
Рядовой
Сообщения: 66
Зарегистрирован: 15.01.2016{, 22:45}
Репутация: 30
Откуда: Mars
Имя: Karen
Контактная информация:

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#98

Сообщение karen » 01.11.2021{, 22:09}

день добрый друзья, :smile469:
решил поделиться своими шрифтом цифр и пару картинок)
не судите строго) :smile9:
будут вопросы с удовольствием отвечу.

буду обновлять шрифты по мере возможности.
старые файлы будут удалятся.
дата последнего редактирования 24.01.2022
Последний раз редактировалось karen 24.01.2022{, 22:09}, всего редактировалось 6 раз.
karens4

ARTEMM
Рядовой
Сообщения: 37
Зарегистрирован: 05.05.2021{, 21:31}
Репутация: 0
Имя: Артём

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#99

Сообщение ARTEMM » 04.11.2021{, 21:17}

Добрый день спасибо за блоки но вот какая проблема сборка esp32 и ssd1306 очень сильно отбирают процессорное время если выводить три четыре строки и на отдельной плате к примеру несеметричный мультивибратор и поставить ширина импульса 1 миллисекунд то будет 1.3 и прыгать если отключить блок вывод текста то чётко 1 миллисекунда подскажите как можно решить эту проблему

Vulir
Рядовой
Сообщения: 1
Зарегистрирован: 12.01.2020{, 20:37}
Репутация: 0
Имя: Михаил

ESP8266/ESP32 и дисплеи OLED (библиотека esp8266-oled-ssd1306).

#100

Сообщение Vulir » 16.12.2021{, 16:42}

Всем доброго времени суток. Подскажите возможно ли прикрутить 2 дисплея ssd1306 к одной esp32? :smile37:

Ответить

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