LCM 1602 пожалуй один из самых популярных экранов на рынке. Собран на популярном контроллере HD44780U.  Из названия модели следует, что экран состоит из двух строк по 16 символов. Поддержки русского языка в этой конкретной модели нет.

Шина данных ш2с позволяет по двум проводам подключать до 127 устройств, при чем одновременно. Данный I2C реализован на чипе PCF8574T.

 

Схема подключения:

 lcm1602 iic v1 5 1   lcm1602 iic v1 6

Синяя штука — переменное сопротивление, позволяет настроить контрастность экрана.

Перемычка слева — отвечает за подсветку экрана.

Блок из 4х контактов подключается к arduino так:

GND — GND
VCC — 5V
SDA — A4 (если Arduino MEGA, то к D20)
SCL — A5 (если Arduino MEGA, то к D21)

Рекомендуют  SDA и SCL подтянуть к линии 5В резисторами на 10к Ом, но для пробы можно и без них.

lcm1602 к ардуино

 

Библиотека

LiquidCrystal_I2C2004V1

 

Скетч

У дисплея может быть другой IIC адрес, вместо 0x27 может оказаться 0x3F. Чтобы точно определить адрес можете воспользоваться сканером i2c устройств.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

//задаем адрес LCD экрана 0x27, 16 символов, 2 строки
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  lcd.init(); // Инициализируем экран
  //включаем подсветку
  lcd.backlight();
  //Устанавливаем позицию начиная с которой выводится текст.
  lcd.setCursor(2, 0);
  //выводим строку 1
  lcd.print("Hello, World!");
  //аналогично выводим вторую строку
  lcd.setCursor(1, 1);
  lcd.print("www.2150692.ru");
}

void loop() {
}

 

Бывали случаи, что пишется только один символ. Проблема оказалась в версии Arduino IDE, рабочая 1.6.4 или 1.6.5

Комментарии   

+2 # Артур 07.02.2016 16:41
:lol: Пользовался программой Arduino IDE 1.6.7 (сайт Arduino.сс)последняя на 2015-16 год, на ней выводился только первые символы, скачали "портабл" версию Arduino 1.6.5 и всё за работало! Eстественно скачанную библиотеку нужно поместить в папку с портабл. Автор статьи молодец, т.к. даёт толковые советы по устранению ошибок.
Ответить | Ответить с цитатой | Цитировать
+2 # Дмитрий 11.02.2016 14:48
Да кстати заметил, что версия 1.6.4 на ХР выдаёт ошибку кампиляции. При установке версии 1.6.0 всё нормально.
Ответить | Ответить с цитатой | Цитировать
0 # Александр 08.04.2016 16:32
:lol: Спасибо, на старой поехала
Ответить | Ответить с цитатой | Цитировать
0 # Анатолий 24.05.2016 21:24
А для какой цели SDA и SCL подтягивать к линии 5В ?
Ответить | Ответить с цитатой | Цитировать
-1 # Alex 11.09.2016 19:19
Выходы микросхем несимметричны относительно нагрузочной способности к "0" и "1". Чтобы увеличить скорость перехода уровней от "0" к "1" и "подтягивают" шину к питанию через резисторы от 1 до 15 кОм. Но для одного устройства и коротких проводов это можно не делать.
Ответить | Ответить с цитатой | Цитировать
0 # DeaDPlayeR DDPR 18.12.2016 00:17
Добрый вечер,
Подскажите как сделать вывод char на дисплей.
Заранее спасибо. :-)
Ответить | Ответить с цитатой | Цитировать
0 # Глеб 29.12.2016 20:58
Спасибо работает
Ответить | Ответить с цитатой | Цитировать
0 # Александр 01.03.2017 15:31
да, и у меня все получилось....Однако любопытно, почему не исправить IDE что бы и в новой версии все работало?
Ответить | Ответить с цитатой | Цитировать
+1 # Дмитрий 16.03.2017 00:47
Могу поделиться собственным опытом борьбы с выводом только первого символа. Версия Arduino IDE 1.8.1, установлена инсталлятором.
Бился с проблемой минут сорок, до смены версий не дошел, определил, что со строкой
LiquidCrystal_I2C lcd(0x3F, 16, 2);
выводится только один символ, а со строкой
LiquidCrystal_I2C lcd(0x3F,16,2);
все выводится нормально. Пусть кто-нибудь еще попробует.
В истоках проблемы еще не разбирался, разберусь - отпишу.
Ответить | Ответить с цитатой | Цитировать
0 # Михаил 13.08.2017 15:02
У меня дисплей подключен, но не ничего не выводится
Ответить | Ответить с цитатой | Цитировать

Добавить комментарий


Защитный код
Обновить