Дисплей LCD 1602 по I2C
Четыре провода вместо шестнадцати: GND, +5 В, SDA на A4 и SCL на A5. Адрес 0x27 записан и в скетче, и в инспекторе модуля — не совпадут, экран останется пустым.
Программа
// Дисплей 16×2 по шине I2C — четыре провода вместо шестнадцати.
//
// SDA и SCL — не «любые» выводы: на UNO это A4 и A5, других у платы нет.
// 0x27 — адрес модуля на шине. Он записан и в скетче, и в инспекторе устройства
// на схеме; не совпадут — экран останется пустым, хотя провода целы.
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // адрес, столбцов, строк
void setup() {
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("ArduinoCraft");
}
void loop() {
// Вторая строка — секунды с момента включения. Позицию задаём каждый раз:
// курсор после print остаётся там, где закончил.
//
// Текст латиницей не из вредности: у обычного модуля 1602 в знакогенераторе
// кириллицы нет, и на настоящем экране русские буквы станут мусором.
lcd.setCursor(0, 1);
lcd.print("uptime: ");
lcd.print(millis() / 1000);
lcd.print(" s ");
delay(500);
}
Схема примера появится, когда загрузится страница: её собирает и считает движок цепей.