Взаимодействие Arduino с символьным LCD дисплеем
В данной статье рассматривается, как легко работать с символьным LCD дисплеем, используя Arduino, чтобы снабдить ваше устройство на Arduino пользовательским интерфейсом.
Жидкокристаллические дисплеи (LCD) обычно используются для отображения данных на таких устройствах, как калькуляторы, микроволновые печи и много других электронных устройств.
В данной статье мы рассмотрим, как использовать LCD дисплей 16x2 совместно с Arduino. У LCD дисплея 16x2, который используется в эксперименте, всего 16 выводов. Как показано в таблице ниже, восемь выводов являются линиями данных (выводы 7-14), два – для питания и земли (выводы 1 и 16), три вывода используются для управления работой LCD (выводы 4-6), и один используется для регулировки контрастности LCD дисплея (вывод 3). Оставшиеся два вывода (15 и 16) питают подсветку. Описание выводов LCD дисплея приведено ниже:
Номер вывода | Назначение вывода |
---|---|
1 | земля |
2 | +5В |
3 | Средний вывод потенциометра (для регулировки контрастности) |
4 | Выбор регистра (RS) |
5 | Чтение/Запись (RW) |
6 | Включение (EN) |
7 | DB0 |
8 | DB1 |
9 | DB2 |
10 | DB3 |
11 | DB4 |
12 | DB5 |
13 | DB6 |
14 | DB7 |
15 | +4.2–5 В |
16 | земля |
Эксперимент 1
В этом эксперименте мы подключим 16x2 LCD дисплей к Arduino Mega 2560 и отобразим на LCD какой-нибудь текст.
Необходимые комплектующие
- 1 x 16x2 LCD дисплей
- 1 x плата Arduino Mega 2560
- 1 x потенциометр 5 кОм
- макетная плата
- перемычки
Схема соединений
В этой схеме выводы LCD дисплея подключаются к выводам Arduino в соответствии с таблицей, приведенной ниже. Подключите крайние вывода потенциометра к 5В и земмле, а средний вывод – к выводу 3 LCD дисплея. Вращение потенциометра управляет контрастностью LCD дисплея. Выводы подсветки LCD дисплея подключаются к 5В и земле, как показано на рисунке ниже.
Выводы LCD дисплея | Выводы платы Arduino |
---|---|
DB4 | 4 |
DB5 | 5 |
DB6 | 6 |
DB7 | 7 |
RS | 8 |
EN | 9 |
Код
#include "LiquidCrystal.h"
// инициализировать библиотеку, указав ей выводы подключения
LiquidCrystal lcd(8,9,4,5,6,7);
void setup()
{
lcd.begin(16,2);
// установить курсор в начало первой строки LCD дисплея
lcd.setCursor(0,0);
// напечатать текст
lcd.print(" 16x2 LCD");
// установить курсор в начало следующей строки
lcd.setCursor(0,1);
lcd.print(" DISPLAY");
}
void loop()
{}
Эксперимент 2
В данном эксперименте мы отобразим на LCD дисплее значение счетчика из программы на Arduino. Счетчик будет отсчитывать количество секунд до 100, после чего дисплей будет очищен.
Необходимые комплектующие
В данном эксперименте используются те же комплектующие, что и в первом эксперименте.
Схема соединений
Код
#include "LiquidCrystal.h"
// инициализировать библиотеку, указав ей номера выводов
LiquidCrystal lcd(8,9,4,5,6,7);
void setup()
{
lcd.begin(16,2);
// установить курсор в начало первой строки LCD дисплея
lcd.setCursor(0,0);
// напечатать текст
lcd.print(" COUNTER");
delay(100);
int a=0;
lcd.setCursor(0,1);
lcd.print(" ");
lcd.print(a);
while(a<=100)
{
a=a+1;
delay(1000);
lcd.setCursor(0,1);
lcd.print(" ");
lcd.print(a);
}
}
void loop()
{
lcd.clear();
}
Видео
Заключение
Для более подробной информации смотрите описание библиотеки LiquidCrystal.