Попробуйте маленькие задержки между командами > 10 мС, возможно библиотека не отслеживает освобождение шины, нужно дать задержку чтобы шина освободилась по таймауту
[uquote="Alexey1969",url="/forum/viewtopic.php?p=4376038#p4376038"]Попробуйте маленькие задержки между командами > 10 мС, возможно библиотека не отслеживает освобождение шины, нужно дать задержку чтобы шина освободилась по таймауту[/uquote]
Задержку сделал но симптомы теже...
Спойлер// переводим курсор на позицию колонка 0 строка 3
lcd.setCursor(12, 0);
// печатаем секунды с начала работы скетча:
lcd.print(stH+":"+stM+":"+stS);
delay(15);
lcd.setCursor(0,0);
lcd.print("T="+String(bme.readTemperature())+char(223)+"C");
delay(15);
lcd.setCursor(0,1);
lcd.print("H="+String(bme.readHumidity())+"%");
delay(15);
lcd.setCursor(0,2);
lcd.print("P="+String(pressureToMmHg(bme.readPressure()))+"mm");
delay(15);
lcd.setCursor(11,2);
lcd.print("A="+String(pressureToAltitude(bme.readPressure()))+"m");
delay(15);
lcd.setCursor(0,3);
lcd.print(String(3.14159265,9));
digitalWrite(LED_BUILTIN, LOW);
delay(500);
Главное почему левая верхняя часть экрана изначально слабая контрастность
и почему срывается на букаряськи после примерно 20-30 выводов на экран
Добавлено after 24 minutes 23 seconds:
Я только начинаю пользоваться, не кидайте тапки сразу.
Вот Скетч
Спойлер//#include <LiquidCrystal.h>
//LiquidCrystal lcd(6,7,2,3,4,5);
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
#include <GyverBME280.h>
GyverBME280 bme; // Создание обьекта BME280
Предупреждения. Переменная объявлена, но не используется. Исправление рекомендуется, но не обязателное. Работает.
Склонен думать, что это проблема дисплея. Но как работает через 6 контактов напрямую …
Даже если бы захотел, не могу программно сделать цифры полусветлыми в одной части экрана .
Какую версию Arduino IDE используете?
[uquote="veso74",url="/forum/viewtopic.php?p=4376095#p4376095"]Предупреждения. Переменная объявлена, но не используется.
Какую версию Arduino IDE используете?[/uquote]
Склоняюсь к тому, что экран подгорел когда на контроллере сгорел диод шотки.
Добавлено after 40 seconds:
Arduino ide крайний.
Добавлено after 5 minutes 52 seconds:
Попробую экран запаять напрямую без I2C.
Сразу будет ясно, как вы считаете ?
Последний раз редактировалось gps38region Ср фев 22, 2023 13:39:19, всего редактировалось 1 раз.
Немного согните плату дисплея (контакты имеет внутри токопроводящую резину), не улучшается ли контрастность в пораженной области?
Да, с помощью простого "Привет, мир" с изменением цифр/букв достаточно нескольких минут.
А что случилось, что сгорел диод? Другие дефекты? Каким напряжением питались?
Решил разобрать экран.
Между контактами платы экрана и контактами (резиновые проводники) затек флюс. (Еще тот рукожоп)
Промыл собрал и подключил к экрану плату I2C.
Новая проблема нарисовалась....
Подскажите чайнику в чем проблема ?
Раньше этот код работал, скрины я выше выкладывал.
Добавлено after 49 minutes 23 seconds:
LiquidCrystal_I2C бывают разные !!!
Или не ставится библиотека...
Или компилируется с ошибкой...
Или бывают правильные...
Методом перебора начал устанавливать всякие и попал что стала компилироваться.
На экране пока тишина ...... (подсветкой управляю вкл/выкл)
Из существующих в интернете, используемая LiquidCrystal_I2C очень старая. Лучше бы свой код загрузили бы Скачал с оптическим распознаванием OCR. Попробуйте.
[uquote="veso74",url="/forum/viewtopic.php?p=4403513#p4403513"]Лучше бы свой код загрузили бы [/uquote]
Код я выложил общим скриншотом.
По работе с LCD мне фиолетово какую библиотеку использовать, адаптироваться можно легко. Но вот то что выкладывают чаще всего то все и используют.
Ясно. Для того, чтобы опробовать программный код на мой комп, мне приходилось самому писать на клавиатуре (или как-то иначе (OCR)). Проще, если вы поделились текстовым файлом.
Не написали: сработал ли пример, который я вставил? Там библиотека LiquidCrystal_I2C локальная (в локальной папке проекта).
Я спросил потому, что у I2C быстродействие не бесконечно. Если по шине идёт интенсивный обмен, то возможны проблемы с выводом на дисплей, я с таким когда-то давно сталкивался.
[uquote="electroget",url="/forum/viewtopic.php?p=4403751#p4403751"]Если по шине идёт интенсивный обмен, то возможны проблемы с выводом на дисплей[/uquote]
Спасибо, попробую чисто экран подключить.
Стоят часы реального времени, датчик BM280, MQ135.