Взаимодействие Arduino с символьным LCD дисплеем

Добавлено 9 января 2017 в 03:00

В данной статье рассматривается, как легко работать с символьным LCD дисплеем, используя Arduino, чтобы снабдить ваше устройство на Arduino пользовательским интерфейсом.

Жидкокристаллические дисплеи (LCD) обычно используются для отображения данных на таких устройствах, как калькуляторы, микроволновые печи и много других электронных устройств.

В данной статье мы рассмотрим, как использовать LCD дисплей 16x2 совместно с Arduino. У LCD дисплея 16x2, который используется в эксперименте, всего 16 выводов. Как показано в таблице ниже, восемь выводов являются линиями данных (выводы 7-14), два – для питания и земли (выводы 1 и 16), три вывода используются для управления работой LCD (выводы 4-6), и один используется для регулировки контрастности LCD дисплея (вывод 3). Оставшиеся два вывода (15 и 16) питают подсветку. Описание выводов LCD дисплея приведено ниже:

Назначение выводов LCD дисплея на HD44780
Номер выводаНазначение вывода
1земля
2+5В
3Средний вывод потенциометра (для регулировки контрастности)
4Выбор регистра (RS)
5Чтение/Запись (RW)
6Включение (EN)
7DB0
8DB1
9DB2
10DB3
11DB4
12DB5
13DB6
14DB7
15+4.2–5 В
16земля
Выводы LCD дисплея на HD44780
Выводы LCD дисплея на HD44780

Эксперимент 1

В этом эксперименте мы подключим 16x2 LCD дисплей к Arduino Mega 2560 и отобразим на LCD какой-нибудь текст.

Необходимые комплектующие

Схема соединений

В этой схеме выводы LCD дисплея подключаются к выводам Arduino в соответствии с таблицей, приведенной ниже. Подключите крайние вывода потенциометра к 5В и земмле, а средний вывод – к выводу 3 LCD дисплея. Вращение потенциометра управляет контрастностью LCD дисплея. Выводы подсветки LCD дисплея подключаются к 5В и земле, как показано на рисунке ниже.

Подключение символьного LCD дисплея к плате Arduino
Выводы LCD дисплеяВыводы платы Arduino
DB44
DB55
DB66
DB77
RS8
EN9
Схема подключения LCD дисплея к Arduino Mega 2560
Схема подключения LCD дисплея к Arduino Mega 2560

Код

#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();
}

Видео


На сайте работает сервис комментирования DISQUS, который позволяет вам оставлять комментарии на множестве сайтов, имея лишь один аккаунт на Disqus.com.


Сообщить об ошибке