Отображение текста на ЖК-дисплее I2C

Я новичок в электронике и пытаюсь заставить свой ЖК-дисплей 1602 работать с адаптером I2C. У меня работает подсветка, но я не могу вывести текст. Это мой текущий код:

#include <LiquidCrystal_I2C.h>
#include <Wire.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
    lcd.init();
    lcd.backlight();
    lcd.setCursor(5, 0);
    lcd.print("HELLO");
}

void loop() {
    lcd.backlight();
    delay(2000);
    lcd.noBacklight();
    delay(2000);
}

Я проверил адрес I2C с помощью сканера, и это 0x27.

Я немного погуглил и наткнулся на этот пост, где кто-то разместил это:

Простой тест

Подайте + 5 В / GND на ЖК-дисплей, а затем подайте питание фонового светодиода (иногда с пометкой A / K) на ЖК-модуль.

Никаких других подключений (данные и т. д.) для этого теста включения не требуется.

Вы должны быть в состоянии различить ВСЕ поля болтунов, но подключение контрастного горшка облегчит эту задачу.

Он МОЖЕТ быть не полностью виден, но модуль инициализируется (внутренне) при включении питания, и должны отображаться ВСЕ поля символов.

Конечно, теперь вы знаете, что вам нужно в основном три подключения питания к ЖК-дисплею — сам ЖК-дисплей, контрастность и подсветка.

Конечно, похоже, что основная мощность ЖК-дисплея отсутствует - следовательно, никакие интеллектуальные данные не могут быть обработаны / отображены.

Я также провел этот тест и пришел к этим результатам:

  • При подаче 5В на подсветку светит ярко.
  • При подаче 5 В как на подсветку, так и на сам ЖК-дисплей, подсветка становится темнее, но больше ничего не появляется.

Затем я случайно перевернул адаптер I2C, но это дало мне текстовые блоки.

Как я могу заставить текст отображаться? Что я сейчас делаю неправильно?


person user2988879    schedule 27.03.2017    source источник


Ответы (2)


Небольшой вопрос, вы пробовали обрезать горшок? Я подозреваю, что это задает контраст, а я забыл об этом, и у меня был пустой дисплей. Ваш Саймон М.

person Simon Markham    schedule 28.03.2017
comment
Вы спасли мою ночь! - person Arthur; 21.12.2017

Ваш адаптер I2C преобразует последовательные данные в параллельный вывод на контакты ЖК-дисплея. Вы уверены, что это сделано для контактов, которые вы ожидаете?

Особенно, если вы соедините любой адаптер I2C с любым 16-контактным ЖК-модулем, вам следует проверить, какие сигналы вы куда помещаете...

При необходимости есть конструкторы LiquidCrystal_I2C, в которых можно указать выводы LCD, если стандартные не подходят.

person datafiddler    schedule 27.03.2017
comment
Спасибо за ваш комментарий, я считаю, что у меня правильное сочетание адаптера I2C и ЖК-модуля, но я не совсем уверен. Я купил этот ЖК-дисплей и этот адаптер I2C. Есть ли способ узнать? Кроме того, библиотека, которую я использую (она написана Франком де Брабандером), похоже, не имеет конструкторов, о которых вы говорите. - person user2988879; 27.03.2017