Страница 2 из 3

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 11 янв 2019, 10:55
Dimm
Приветствую всех! Заюзал данный ПБ, вроде понравилось) Имеет место явление:
не сбрасываются предидущие значения. если, например, вывести трехзначное число, потом на этом же месте вывести двухзначное, то видеть мы будем трехзначное. т.к. третий знак не погас. Например, выводим 99 - видим 99, затем выводим 100- видим 100, потом обратно 99 - увидим 199. Предполагаю, что где-то что-то должно обнуляться... Может знает кто как лечить?, т.к. в коде я нешипко шарю

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 11 янв 2019, 12:06
kulibinsvv
sergii2012 писал(а): 10 янв 2019, 20:12на экране пару цифр и точки
Проверяйте питание дисплея и контакты подключения (типа "проводок отвалился").

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 11 янв 2019, 12:46
aidar_i
Dimm , у него в блоке нужно передергивать EN, чтобы стирался текст.
Пример
Блок от RedSky.flp

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 11 янв 2019, 14:30
Dimm
[ref]aidar_i[/ref], низкий поклон)

Отправлено спустя 10 минут 8 секунд:
aidar_i писал(а): 11 янв 2019, 12:46нужно передергивать EN
правда теперь моргает весь показометр, но опять же не ясно будет это напрягать или нет... эксплуатация покажет

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 12 янв 2019, 09:08
sergii2012
kulibinsvv писал(а): 11 янв 2019, 12:06
sergii2012 писал(а): 10 янв 2019, 20:12на экране пару цифр и точки
Проверяйте питание дисплея и контакты подключения (типа "проводок отвалился").
примеры из другой библиотеки работают как надо, так что дело не в проводке.

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 12 янв 2019, 10:40
aidar_i
В начале темы пишут же про это. Не помогает?

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 12 янв 2019, 13:23
sergii2012
aidar_i писал(а): 12 янв 2019, 10:40В начале темы пишут же про это. Не помогает?
где именно? :smile14:

Отправлено спустя 17 минут 28 секунд:
ivanpost писал(а): 12 дек 2018, 23:59[ref]ivanpost[/ref], Для работы с часами придется заменить библиотеку Wire.h на iarduinoRTC.h. Все в сумме работает очень быстро и ест мало RAM (жалкие 300 байт :smile427: ). флэш -прилично . Так что библиотеки легко можно использовать для 328p. Вот рабочий блок для часов
C:\Users\sergi\AppData\Local\Temp\flprog\pr1\pr1.ino:5:28: warning: extra tokens at end of #include directive [enabled by default]

#include "user_interface.h";

^

In file included from c:\Program Files (x86)\FLProg\ideV2\libraries\iarduino_RTC/iarduino_RTC.h:28:0,

from C:\Users\sergi\AppData\Local\Temp\flprog\pr1\pr1.ino:2:

c:\Program Files (x86)\FLProg\ideV2\libraries\iarduino_RTC/iarduino_RTC_DS1307.h: In member function 'void iarduino_RTC_DS1307::funcBegin(uint32_t)':

c:\Program Files (x86)\FLProg\ideV2\libraries\iarduino_RTC/iarduino_RTC_DS1307.h:65:248: error: 'TWBR' was not declared in this scope

void funcBegin (uint32_t j) /* Установка регистров шины и подтяжка выводов (скорость шины в кГц) */ {pinMode(SDA, INPUT); pinMode(SCL, INPUT); digitalWrite(SDA, 1); digitalWrite(SCL, 1); TWBR=((F_CPU/(j*1000))-16)/2; if(TWBR<10){TWBR=10;} TWSR&=(~(_BV(TWPS1)|_BV(TWPS0))); }

^

c:\Program Files (x86)\FLProg\ideV2\libraries\iarduino_RTC/iarduino_RTC_DS1307.h:65:300: error: 'TWSR' was not declared in this scope

void funcBegin (uint32_t j) /* Установка регистров шины и подтяжка выводов (скорость шины в кГц) */ {pinMode(SDA, INPUT); pinMode(SCL, INPUT); digitalWrite(SDA, 1); digitalWrite(SCL, 1); TWBR=((F_CPU/(j*1000))-16)/2; if(TWBR<10){TWBR=10;} TWSR&=(~(_BV(TWPS1)|_BV(TWPS0))); }

^

In file included from sketch\pr1.ino.cpp:1:0:

c:\Program Files (x86)\FLProg\ideV2\libraries\iarduino_RTC/iarduino_RTC_DS1307.h:65:313: error: 'TWPS1' was not declared in this scope

void funcBegin (uint32_t j) /* Установка регистров шины и подтяжка выводов (скорость шины в кГц) */ {pinMode(SDA, INPUT); pinMode(SCL, INPUT); digitalWrite(SDA, 1); digitalWrite(SCL, 1); TWBR=((F_CPU/(j*1000))-16)/2; if(TWBR<10){TWBR=10;} TWSR&=(~(_BV(TWPS1)|_BV(TWPS0))); }

^

c:\Program Files (x86)\FLProg\ideV2\portable\packages\esp8266\hardware\esp8266\2.3.0-rc2\cores\esp8266/Arduino.h:184:25: note: in definition of macro '_BV'

Отправлено спустя 1 час 31 минуту 5 секунд:
aidar_i писал(а): 12 янв 2019, 10:40В начале темы пишут же про это. Не помогает?
не помогает

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 14 янв 2019, 16:56
sergii2012
:smile225: пока не решен вопрос

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 14 янв 2019, 18:00
aidar_i
В просторах интернета есть много примеров с разными библиотеками. Проверьте, какие Вам нравятся, ПБ для олед дисплеев тоже есть в форуме разные.
Еще попробуйте заменить драйверы [spoiler]https://elchupanibrei.livejournal.com/34751.html[/spoiler]

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 01 фев 2019, 20:01
aidar_i
Накидал блок для теста OLED + ESP8266. Без кириллицы.
Модель дисплея выберите в "редактирование" блока, в DeclareSection, (удалите ненужный или закомментируйте, по умолчанию стоит
#include "SH1106.h"
SH1106 display(adr_disp, pin_SDA, pin_SCK);
ESP8266+OLED.flp
Библиотека
esp8266-oled-ssd1306-master.zip

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 02 фев 2019, 10:36
ingener
А вот вопрос немного не в тему, но касательно дисплея и 12С. Можно ли, если 12С уже впаян в 1602, подключать дисплей напрямую? То есть, к пинам припаивать провода, идущие к выводам Ардуино?
Больно хлопотно выпаивать 12С с дисплея, да и потенциометр яркости уже на месте.

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 02 фев 2019, 10:40
aidar_i
Я думаю, можно, на счёт потенциометра не знаю, надо схему смотреть.

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 02 фев 2019, 12:18
seri0shka
Простите, влезу в тему со своим вопросм, чтоб не создавать новую. Есть возможность купить OLED 128 х 64 с I2C или с SPI (с другими заказами за компанию). Какой из этих интерфейсов проще и удобнее для программирования в ИДЕ и ФЛпрог?

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 02 фев 2019, 15:50
aidar_i
Мне хватает и нравится I2C.

Отправлено спустя 1 минуту 57 секунд:
1602. Лучше отпаяйте и поставьте разъем.
https://youtu.be/6aAXiRlgEt4

Отправлено спустя 1 час 52 минуты 8 секунд:
Подключил[spoiler]
IMG_20190202_174402.jpg
[/spoiler]
[spoiler]
IMG_20190202_174424.jpg
[/spoiler]

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 04 фев 2019, 20:33
pipapsix
[ref]aidar_i[/ref],
запустил значит, все ок.
Больше двух строчек можно выводить??
Чет я в дебрях не разобрался))

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 05 фев 2019, 00:29
aidar_i
Да , работает, сегодня прикрутил кириллицу. Можно добавить строки, сколько влезет.
Может работать и с SPI.
Выложу позже, пока доделываю.
[spoiler]
IMG-20190205-WA0002.jpeg
[/spoiler]
[spoiler]
IMG-20190205-WA0004.jpeg
[/spoiler]
[spoiler]
IMG-20190205-WA0006.jpeg
[/spoiler]

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 05 фев 2019, 13:06
aidar_i
Выложил сюда.

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 08 фев 2019, 01:12
aidar_i
av писал(а): 03 фев 2019, 11:39Если использовать вместе с ардуиной не советую этот дисплей использовать вообще. Уж очень много ОЗУ съедает не оставляя места для остального алгоритма проекта.
Попробуйте легкую библиотеку ASOLED. Я его приспособил и к ESP8266. Он выводит только текст.
ASOLED.rar
sketchASOLED.ino
Отпишитесь на сколько она легче.

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 10 фев 2019, 08:45
aidar_i
Автор пишет, это плата за "лёгкость". Почитайте его тему.

Вывод текста на дисплеи OLED c интерфейсом I2C и контроллером SSD1306

Добавлено: 09 май 2019, 10:02
Shurik2975
Здравствуйте. Может не совсем в ту тему но по той же тематике. Подскажите пожалуйста почему вот этот блок Автора программы SSD1306 print не отображает кириллицу, хотя автор пишет что он с кириллицей дружит?
Уже не актуально, кириллица появилась.
Админ можете удалить сообщение.