Модуль 6 — Вывод информации (курс для начинающих)

Цель модуля: научиться подключать и использовать дисплеи для вывода информации с Arduino. Рассмотрим работу с LCD 1602 и OLED, использование библиотек Arduino, а также создадим проект «Термометр с экраном».


Теория

LCD 1602

Дисплей LCD 1602 — один из самых популярных текстовых дисплеев для Arduino. Он имеет 2 строки по 16 символов. С I2C-модулем подключается всего по двум линиям — SDA и SCL, что экономит пины микроконтроллера.

OLED дисплеи

OLED-дисплеи отличаются высокой контрастностью, малым потреблением и могут отображать как текст, так и графику. Наиболее распространены модели с разрешением 128x64 и интерфейсом I2C.

Использование библиотек Arduino

Для работы с дисплеями используются готовые библиотеки, которые упрощают вывод текста и чисел:

  • LiquidCrystal_I2C — для LCD с I2C.
  • U8g2 или Adafruit_SSD1306 — для OLED-дисплеев.

Установить библиотеки можно через Менеджер библиотек в Arduino IDE.


Практика

Подключение LCD 1602 с I2C

Что нужно: Arduino Uno/Nano, LCD 1602 с I2C, 4 провода.

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

  • VCC → +5V
  • GND → GND
  • SDA → A4 (на Uno/Nano)
  • SCL → A5 (на Uno/Nano)

Пример вывода данных

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

LiquidCrystal_I2C lcd(0x27, 16, 2); // Адрес 0x27, 16 символов, 2 строки

void setup() {
  lcd.init();
  lcd.backlight();
  lcd.setCursor(0, 0);
  lcd.print("Hello, Arduino!");
}

void loop() {
}

Вывод температуры с DHT11 на экран

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

#define DHTPIN 2
#define DHTTYPE DHT11

LiquidCrystal_I2C lcd(0x27, 16, 2);
DHT dht(DHTPIN, DHTTYPE);

void setup() {
  lcd.init();
  lcd.backlight();
  dht.begin();
}

void loop() {
  float temp = dht.readTemperature();
  float hum = dht.readHumidity();

  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("Temp: ");
  lcd.print(temp);
  lcd.print(" C");

  lcd.setCursor(0, 1);
  lcd.print("Hum: ");
  lcd.print(hum);
  lcd.print(" %");

  delay(2000);
}

Проект: «Термометр с экраном»

Задача: измерять температуру и влажность с помощью DHT11 и выводить их на LCD 1602.

Дополнительно можно добавить автоматическое включение подсветки дисплея только при низком освещении, подключив LDR.

Типичные ошибки

  • Неправильный адрес I2C — используйте сканер I2C для поиска.
  • Забыли подключить библиотеку — код не компилируется.
  • Слабый контакт проводов SDA/SCL — на экране пусто.

Что дальше

В следующем модуле мы рассмотрим Двигатели и исполнительные устройства: сервоприводы, MOSFET, L298N


Контрольные вопросы

  1. Чем LCD 1602 с I2C отличается от обычного LCD?
  2. Какие библиотеки используются для работы с OLED?
  3. Как подключить LCD 1602 к Arduino Uno?
  4. Как вывести данные с датчика DHT11 на экран?

Авторский курс по Arduino для начинающих. Использование материалов на коммерческих сайтах допускается с указанием источника.

<< Проекты << Все товары >> Статьи, уроки >>

Написать отзыв

Примечание: HTML разметка не поддерживается! Используйте обычный текст.
    Плохо           Хорошо
Монтажный модуль драйвера A4988 или DRV8825

Монтажный модуль драйвера A4988 или DRV8825

Модуль для установки одного из самых распространенных драйверов A4988 или DRV8825 для управлени..

97.23грн.

Arduino SIM800 CBC уровень заряда

Arduino SIM800 CBC уровень заряда

Привет друзья! У полюбившегося нам SIM800L есть аналого-цифровой преобразователь, который предназнач..

Резистор подстроечный 1; 10; 200 кОм

Резистор подстроечный 1; 10; 200 кОм

Переменный резистор или потенциометр для установки на печатную плату. Сопротивление подстраивается п..

15.48грн.

Адаптер USB 2.0 в TTL UART

Адаптер USB 2.0 в TTL UART

Коммуникационный конвертер USB 2.0 в TTL UARTОснован на микросхеме CP2102Имеется самовоста..

125.05грн.

Торцевые держатели линейных направляющих 8мм

Торцевые держатели линейных направляющих 8мм

Держатель цилиндрической направляющей диаметром 8 ммПодходит для любой оси 3D-принтера или CNCДиамет..

72.01грн.