Модуль 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 размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
Модуль розширення входів-виходів PCF8574A

Модуль розширення входів-виходів PCF8574A

Модуль розширення входів-виходів PCF8574A Розширювач портів на основі спеціалізованої мікросхеми ..

62.18грн.

Які види датчиків можна підключити до Arduino для вимірювання параметрів навколишнього середовища

Які види датчиків можна підключити до Arduino для вимірювання параметрів навколишнього середовища

Які види датчиків можна підключити до Arduino для вимірювання параметрів навколишнього середовищ..

Змінний резистор багатообертовий

Змінний резистор багатообертовий

Потенціометр для надточного налаштування опору.Потужність 2 ВтКут обертання 3600°Розміри вказані на ..

73.09грн.

Стерео підсилювач потужності 15Втх2 на TDA7297

Стерео підсилювач потужності 15Втх2 на TDA7297

Двохканальний підсилювач звукової частоти на основі мікросхеми TDA7297Містить захист від перевантаже..

125.21грн.

Модуль АЦП ADS1115 4-х канальний

Модуль АЦП ADS1115 4-х канальний

АЦП ADS1115 4-х канальний ADS1115 — це 4-х канальний 16-розрядний аналого-цифровий перетворювач (..

99.62грн.