Підключення символьного дисплея LCD 1602 по I2C до ESP32

Підключення LCD 1602 до ESP32 майже не відрізняється від підключення до Arduino.

ESP32 має два інтерфейси I2C, обидва можуть бути як master так і slave. I2C шина дозволяє підключити до 127 пристроїв на одну лінію (адреса 0x00 зарезервована стандартами I2C). Заумочанням піни в фреймворкові Arduino для мікроконтролера ESP32 GPIO 22 (SCL) та GPIO 21 (SDA).

LCD1602 рідкокристалічний дисплей (Liquid Crystal Display) символьний дисплей на 16 символів в два рядки. Кожен символ складається з матриці 5х8. Побудований на чіпсеті HD44780, або сумісного з ним. Дозволяє відображати різноманітні меню для керування, дані з датчиків.

ESP32 живиться від 3.3 V, для дисплея потрібно 5 V. Тому живити дисплей потрібно від окремого джерела 5 V, або використовувати модулі LuaNode32, Lolin32 та їм подібні.

Піни для підключення LCD 1602

ESP32LCD1602
5 VVCC
GNDGND
SCL default (GPIO 22)SCL
SDA default (GPIO 21)SDA

Програмний код для ESP32

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

LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup()
{
  Wire.begin();   // Заумочанням викорстивуються GPIO_22 (SCL) та GPIO_21 (SDA).
  // Wire.begin(SDA, SCL); // Довіліні GPIO.
  lcd.init();
  lcd.backlight();
  lcd.setCursor(1, 0);
  lcd.print("LCD1602");
  lcd.setCursor(4, 1);
  lcd.print("Qazf.com.ua");
  delay(2000);
  lcd.clear();
  
}
void loop()
{
 static int count = 0;
 lcd.setCursor(0, 1);             
 lcd.print(count);                 
 count++;                          
 delay(1000);                       
}

Для роботи з символьним дисплейом, ми використаєм бібліотеку  LiquidCrystal I2C, яка заумовчанням входить у Framework Arduino. Для того щоб додати її до вашого проекту, в кінець файлу platformio.ini додайте наступний рядок.

lib_deps = marcoschwartz/LiquidCrystal_I2C@^1.1.

I2C адреса дисплею може бути не 0х27, для пошуку підключених пристроїв скористайтесь статтею Адреси пристоїв на шині I2C та замініть в коді вище вашою якщо вона відрізняється.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *