Графические Дисплеи
Графические Дисплеи
Предыстория.
[spoiler=Спойлер]Перебирал модули для Ардуины и нашел купленный еще 3 года назад экран Nokia 5110.
Поискал на форуме есть вроде готовые блоки нашел Вот эти, посмотрел их не понравилось что русский не заработал.
Решил сделать свои.[/spoiler]
Блок для работы с монохромными дисплеями Nokia 5110, и OLED I2C на SSD1306 и цветным на ILI9341
Может выводить:
- текст, Латинский, Русский, нескольких размеров.
- маленькие картинки заданные массивом HEX (в блоки описано как)
- картинки с SD Карты
- рисовать геометрические приметив (круги, прямоугольники, линии и т.д.)
Блоки и примеры Ссылка
За основу взяты следующие библиотеки:
Adafruit-GFX-Library
Adafruit-PCD8544-Nokia-5110-LCD-library
Adafruit_SSD1306
Adafruit_ILI9341
Но такк как некоторые из них правил, то лучше удалить все похожие, а при компиляции проекта нужные сами добавятся
Перед использование лучше проверить папки *\FLProg\ideV2\libraries\ и C:\Users\*Имя пользователя*\AppData\Local\Arduino15 и удалить все паки в названии которых есть
Adafruit-GFX , Adafruit-PCD8544 , Adafruit_SSD1306
Это необходимо так как разные бывают разные версии и они не совместимы между собой.
Статейка про подключение Графический LCD дисплей 84x48 - Nokia 5110 и Arduin
Просьба ко всем, кто пробовал, отписываться заработало или нет.
[spoiler=Спойлер]Перебирал модули для Ардуины и нашел купленный еще 3 года назад экран Nokia 5110.
Поискал на форуме есть вроде готовые блоки нашел Вот эти, посмотрел их не понравилось что русский не заработал.
Решил сделать свои.[/spoiler]
Блок для работы с монохромными дисплеями Nokia 5110, и OLED I2C на SSD1306 и цветным на ILI9341
Может выводить:
- текст, Латинский, Русский, нескольких размеров.
- маленькие картинки заданные массивом HEX (в блоки описано как)
- картинки с SD Карты
- рисовать геометрические приметив (круги, прямоугольники, линии и т.д.)
Блоки и примеры Ссылка
За основу взяты следующие библиотеки:
Adafruit-GFX-Library
Adafruit-PCD8544-Nokia-5110-LCD-library
Adafruit_SSD1306
Adafruit_ILI9341
Но такк как некоторые из них правил, то лучше удалить все похожие, а при компиляции проекта нужные сами добавятся
Перед использование лучше проверить папки *\FLProg\ideV2\libraries\ и C:\Users\*Имя пользователя*\AppData\Local\Arduino15 и удалить все паки в названии которых есть
Adafruit-GFX , Adafruit-PCD8544 , Adafruit_SSD1306
Это необходимо так как разные бывают разные версии и они не совместимы между собой.
Статейка про подключение Графический LCD дисплей 84x48 - Nokia 5110 и Arduin
Просьба ко всем, кто пробовал, отписываться заработало или нет.
Последний раз редактировалось Слимпер 13 окт 2017, 16:50, всего редактировалось 1 раз.
Графические Дисплеи
Слимпер, к сожалению сейчас времени нет, хотя несколько 5110 лежат без делл. Аа на будущее хотел спросить какие еще десплеи?
Графические Дисплеи
прикупил себе дисплей на чипе ILI9341 такой . планировал прикрутить его к PICу, теперь думаю может к дуньке..., но пока нет времени
Графические Дисплеи
Ну закала OLED I2C на SSD1306 128x32 и 128X64, с ними проблем не должно быть много.bav123 писал(а):Аа на будущее хотел спросить какие еще десплеи?
Еще 128*64 на ST7920, но тут не знаю информации меньше может так сразу и не выйдет.
Еще до кучи заказал TFT I2C 128 * 64 но там даже чип не указан.
Так что надеюсь OLED на SSD1306 сделать, а остальное по экспериментировать, может что и выйдет.
Добавлено (09.10.2017, 17:59)
---------------------------------------------
Ну для него вот библиотека совместима с Adafruit-GFX-Library.pan писал(а):прикупил себе дисплей на чипе ILI9341 такой . планировал прикрутить его к PICу, теперь думаю может к дуньке..., но пока нет времени
Так что думаю не так сложно. Но там еще сенсорный экран есть и sd картридер, это уже другая песня.
Графические Дисплеи
Кстати у меня где то тоже дисплей на ILI9341 лежит, но так и не придумал куда его прикрутить.
Да и по подключению он кучу пинов должен занять. Еще файл с описание прикрепил.
Да и по подключению он кучу пинов должен занять. Еще файл с описание прикрепил.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Графические Дисплеи
столько же как и 5110Слимпер писал(а):Да и по подключению он кучу пинов должен занять
Графические Дисплеи
Ну если только экран то 6 пин, а если сенсор и карта еще 9, хотя может я и не прав.pan писал(а):столько же как и 5110
Графические Дисплеи
ну сенсор и карта это уже как бы дополнительные плюшки. их наличие/отсутствие на дисплей не влияет). речь шла о самом дисплее. а дисплей по моему хорош при своих размерах , характеристиках и цене
- RedSky
- Лейтенант
- Сообщения: 576
- Зарегистрирован: 19 дек 2016, 20:07
- Откуда: Днепропетровск
- Имя: Алексей
- Поблагодарили: 1 раз
Графические Дисплеи
Проверил V0.7- при компиляции ошибка [spoiler=Спойлер]In file included from pr3.ino:3:0:
z:\Ардуино\IDE\arduino-1.6.3\libraries\Adafruit-PCD8544-Nokia-5110-LCD-library/Adafruit_PCD8544.h:28:17: fatal error: SPI.h: No such file or directory
#include <SPI.h>
^
compilation terminated.
Ошибка компиляции.[/spoiler]Решается добавлением в блок 5110 #include<SPI.h>
А ещё из библиотеки можно цветочек убрать - освободится немного места.
z:\Ардуино\IDE\arduino-1.6.3\libraries\Adafruit-PCD8544-Nokia-5110-LCD-library/Adafruit_PCD8544.h:28:17: fatal error: SPI.h: No such file or directory
#include <SPI.h>
^
compilation terminated.
Ошибка компиляции.[/spoiler]Решается добавлением в блок 5110 #include<SPI.h>
А ещё из библиотеки можно цветочек убрать - освободится немного места.
Последний раз редактировалось RedSky 10 окт 2017, 11:54, всего редактировалось 1 раз.
Графические Дисплеи
Странно у меня нет такой ошибки может библиотеки разные, в моей уже в файлеRedSky писал(а):Проверил V0.7- при компиляции ошибка
Adafruit_PCD8544.h есть объявление:
#include <SPI.h>;
По этому в первом сообщении писал
Слимпер писал(а):Adafruit-GFX или Adafruit-PCD8544Это необходимо так как разные бывают разные версии и они не совместимы между собой.
Вот тут вопрос, что и где, а то я не понял?RedSky писал(а):А ещё из библиотеки можно цветочек убрать - освободится немного места.
Последний раз редактировалось Слимпер 10 окт 2017, 12:46, всего редактировалось 1 раз.
- RedSky
- Лейтенант
- Сообщения: 576
- Зарегистрирован: 19 дек 2016, 20:07
- Откуда: Днепропетровск
- Имя: Алексей
- Поблагодарили: 1 раз
Графические Дисплеи
Библиотеки удалял, проверял в 1.6.3. В версии 1.8.1 действительно компилирует нормально.
При старте симуляции в протеусе мелькает эмблема Adafruit, что-то вроде цветка, в железе похоже мы просто не успеваем заметить.
Насколько я понял, это массив в файле Adafruit_PCD8544.cpp.
А нельзя ли сделать что-бы очерёдность #include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>
всегда получалась такой?
При старте симуляции в протеусе мелькает эмблема Adafruit, что-то вроде цветка, в железе похоже мы просто не успеваем заметить.
Насколько я понял, это массив в файле Adafruit_PCD8544.cpp.
А нельзя ли сделать что-бы очерёдность #include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>
всегда получалась такой?
Последний раз редактировалось RedSky 10 окт 2017, 13:20, всего редактировалось 1 раз.
Графические Дисплеи
Тут прикол смотря в какой последовательности вставлять блоки, если сперва Главный затем Nokia 5100, то все правильно, если на оборот, то коряво.RedSky писал(а):А нельзя ли сделать что-бы очерёдность
#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>всегда получалась такой?
Не этот массив буфер экрана, его можно своей картинкой заменить, но удалять нельзя работать не будет. Ну это я так понял.RedSky писал(а):Насколько я понял, это массив в файле Adafruit_PCD8544.cpp
Добавлено (10.10.2017, 14:31)
---------------------------------------------
Копнул внутрь библиотеки Adafruit-GFX-Library. там недавно появился Adafruit_SPITFTСлимпер писал(а):Ну для него вот библиотека совместима с Adafruit-GFX-Library.
Типа универсальный вариант для TFT SPI дисплеев.This is our library for generic SPI TFT Displays with address windows and 16 bit color (e.g. ILI9341, HX8357D, ST7735...)
Если это так, то можно сделать универсальные блоки для таких дисплеев.
- RedSky
- Лейтенант
- Сообщения: 576
- Зарегистрирован: 19 дек 2016, 20:07
- Откуда: Днепропетровск
- Имя: Алексей
- Поблагодарили: 1 раз
Графические Дисплеи
Так в том то и дело, что скетч собирается по разному.
Проверил - если закомментировать одни только данные работает нормально и флэша занимает на 504 байта меньше.
Раз мы уже взялись за эти дисплеи, есть предложение сделать график отдельным блоком. У меня что то похожее на график получается, только не могу понять, почему в блоке переменная adres не обнуляется. Кажется не разобрался с массивами.
В архиве проект, блок и модель.
Проверил - если закомментировать одни только данные работает нормально и флэша занимает на 504 байта меньше.
Раз мы уже взялись за эти дисплеи, есть предложение сделать график отдельным блоком. У меня что то похожее на график получается, только не могу понять, почему в блоке переменная adres не обнуляется. Кажется не разобрался с массивами.
В архиве проект, блок и модель.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Графические Дисплеи
Ошибка тутRedSky писал(а):У меня что то похожее на график получается, только не могу понять, почему в блоке переменная adres не обнуляется.
if(adres>75){adres==0;}
надо
if(adres>75){adres=0;}
Ну насчет того как лучше делать график не знаю надо думать.
Графические Дисплеи
Версия 0.9 Ссылка та же в первом сообщении, т.к. выкладываю на яндекс диск.
Новое:
-Оптимизация расхода памяти поправив библиотеку Adafruit-PCD8544-Nokia-5110-LCD-library. Реализовал
[spoiler=Спойлер]Перед использование лучше проверить папки *\FLProg\ideV2\libraries\ и C:\Users\*Имя пользователя*\AppData\Local\Arduino15 и удалить все паки в названии которых есть
Adafruit-GFX или Adafruit-PCD8544[/spoiler]
-Добавил вариант блоков геометрии Статические, т.е. убрал все входы перенес настройки в параметры. Это нужно для уменьшения расхода памяти.
Т.к. удалил и вход En, то для выборочного вывода можно использовать выполнения плат
по условию.
Но все равно сложные фоны лучше делать картинкой.
Для того чтобы меньше весила сам библиотека и проекты с использованием блоков, в библиотеки Adafruit-GFX-Library удалил папку Fonts, все равно те шрифты не использовались в блоках, а библиотека из-за них весила больше 3 Мб.
Добавлено (11.10.2017, 18:13)
---------------------------------------------
Версия 0,10 Ссылка та же в первом сообщении, т.к. выкладываю на яндекс диск.
Добавил поддержку Экранов на SSD1306 по интерфейсу I2C.
Но так как нет дисплея в наличии, не тестировал.
Так как использовал не стандартную библиотеку Adafruit_SSD1306
[spoiler=Спойлер]Перед использование лучше проверить папки *\FLProg\ideV2\libraries\ и C:\Users\*Имя пользователя*\AppData\Local\Arduino15 и удалить все паки в названии которых есть
Adafruit_SSD1306[/spoiler]
Новое:
-Оптимизация расхода памяти поправив библиотеку Adafruit-PCD8544-Nokia-5110-LCD-library. Реализовал
Для вступления в силу необходимоRedSky писал(а):Проверил - если закомментировать одни только данные работает нормально и флэша занимает на 504 байта меньше.
[spoiler=Спойлер]Перед использование лучше проверить папки *\FLProg\ideV2\libraries\ и C:\Users\*Имя пользователя*\AppData\Local\Arduino15 и удалить все паки в названии которых есть
Adafruit-GFX или Adafruit-PCD8544[/spoiler]
-Добавил вариант блоков геометрии Статические, т.е. убрал все входы перенес настройки в параметры. Это нужно для уменьшения расхода памяти.
Т.к. удалил и вход En, то для выборочного вывода можно использовать выполнения плат
по условию.
Но все равно сложные фоны лучше делать картинкой.
Для того чтобы меньше весила сам библиотека и проекты с использованием блоков, в библиотеки Adafruit-GFX-Library удалил папку Fonts, все равно те шрифты не использовались в блоках, а библиотека из-за них весила больше 3 Мб.
Добавлено (11.10.2017, 18:13)
---------------------------------------------
Версия 0,10 Ссылка та же в первом сообщении, т.к. выкладываю на яндекс диск.
Добавил поддержку Экранов на SSD1306 по интерфейсу I2C.
Но так как нет дисплея в наличии, не тестировал.
Так как использовал не стандартную библиотеку Adafruit_SSD1306
[spoiler=Спойлер]Перед использование лучше проверить папки *\FLProg\ideV2\libraries\ и C:\Users\*Имя пользователя*\AppData\Local\Arduino15 и удалить все паки в названии которых есть
Adafruit_SSD1306[/spoiler]
Графические Дисплеи
Ну тогда можете попробовать ssd1306 I2C, по идеи в настройках надо указать ширину 128 высоту 32, в RST указать -1 (так как у вас нет такого вывода на плате).у меня такой *узенький* oled https://ru.aliexpress.com/item....98.html
Графические Дисплеи
Слимпер,
Flprog 2.5.1 Arduiono 1.8.1
экран 5110 - кириллица выходит кракозябрами
oled (168 на 64) вообще не завелся, хотя от другого блока работает (ранее на форуме выкладывал кто то)
рекомендации из первого поста выполнил
Flprog 2.5.1 Arduiono 1.8.1
экран 5110 - кириллица выходит кракозябрами
oled (168 на 64) вообще не завелся, хотя от другого блока работает (ранее на форуме выкладывал кто то)
рекомендации из первого поста выполнил
Графические Дисплеи
Это я сам проверял и все работает проблем нет.bav123 писал(а):экран 5110 - кириллица выходит кракозябрами
Латиница нормально?
Ну тут все возможно, не проверял, а с каким работает?bav123 писал(а):oled (168 на 64) вообще не завелся, хотя от другого блока работает (ранее на форуме выкладывал кто то)
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость