На главную страницу | Новости | FAQ | Ссылки | Для детей | Контакты
В это статье мы рассмотрим способы подключения жидкокристаллического дисплея LCD 1602 (чип HD44780) к Arduino. Вообще говоря, LCD 0802 подключается аналогично.
Дисплей LCD 1602 наиболее ходовой из ЖК-дисплеев для ардуины, поскольку прост в подключении и программировании, и стоит недорого. Дисплей позволяет выводить на экран 2 строки по 16 символов в каждой, чего в принципе достаточно для простых приложений типа вывести текущее время и дату.
Сразу скажу, что проще всего этот дисплей будет подключать через IIC/I2C-модуль, что позволяет сильно сократить число проводов
Так что нет смысла покупать их по отдельности.
В общем два основных способа подключения -- это напрямую и через I2C-модуль. Давайте сначала рассмотрим способ через I2C-модуль, т.к. он наиболее практический.
Схема подключения показана на рисунке:
т.е. провода соединяются следующим образом:
I2C-модуль, Arduino
---------------------
SCL - A5
SDA - A4
VCC - +5V
GND - GND
Здесь
SCL - последовательная линия тактирования (Serial CLock);
SDA - последовательная линия данных (Serial Data);
VCC - "+" питания;
GND - "-" питания.
Для работы с дисплеем при таком подключении (т.е. через модуль I2C) можно использовать стандартную библиотеку LiquidCrystal_I2C1602V1 - её нужно распаковать в папку
А вот базовый пример программы для вывода информации на дисплей.
#include < Wire.h >
#include < LiquidCrystal_I2C.h >
LiquidCrystal_I2C lcd(0x27,16,2); /* или 0x3F. */
void setup()
{
lcd.init(); // Инициализация
lcd.backlight(); // Включаем подсветку
lcd.print("Hello, world!"); // Выводим текст
lcd.setCursor(0, 1); // Курсор в начало 2-ой строки
lcd.print("Hello!"); // Выводим текст
}
void loop() // цикл
{
}
Здесь использовался адрес 0x27 шины I2C. У некоторых модулей этот адрес может быть 0x3F. Это возможно определить по маркировке. Вообще говоря, этот адрес можно менять (с помощью паяльника) - такой нехитрый метод позволят в теории подключить более одного дисплея к одной ардуине.
Схема подключения показана на рисунке
взята отсюда
http://www.circuitsgallery.com/2014/10/interfacing-lcd-with-arduino.html
В этом случае используется другая библиотека - LiquidCrystal.
Пример кода:
#include < LiquidCrystal.h >
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
lcd.begin(16, 2);
lcd.print("hello, world!");
lcd.setCursor(0,1);
lcd.print("123");
}
void loop()
{
}
Now 05.12.24 15:39:12, Your IP: 18.97.14.80; arduino.zl3p.com/modules/lcd1602
ePN