Найти в Дзене
NikitaGut

Подключение LCD дисплея с I2C к Raspberry pi

Подключение LCD дисплея с I2C модулем к Raspberry Pi достаточно простое, так как используется всего 4 провода. Давайте разберем все шаги. Обычно I2C-модуль дисплея имеет 4 вывода: • VCC → 5V (или 3.3V, если дисплей поддерживает) • GND → GND • SDA → GPIO 2 (I2C SDA) • SCL → GPIO 3 (I2C SCL) 📌 Важно: На Raspberry Pi I2C по умолчанию может быть отключен. Активируем интерфейс I2C: 1. Открываем настройки: sudo raspi-config 2. Заходим в Interface Options → I2C → Enable 3. Перезагружаем Raspberry Pi: sudo reboot Установим драйвера для работы с I2C и LCD: sudo apt update sudo apt install -y python3-smbus i2c-tools pip install RPLCD После перезагрузки проверим, найден ли дисплей: sudo i2cdetect -y 1 Если дисплей подключен, увидите таблицу с адресом, например: 0 1 2 3 4 5 6 7 8 9 A B C D E F 00: -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -
Оглавление

Подключение LCD дисплея с I2C модулем к Raspberry Pi достаточно простое, так как используется всего 4 провода. Давайте разберем все шаги.

1. Подключение к Raspberry Pi

Обычно I2C-модуль дисплея имеет 4 вывода:

VCC → 5V (или 3.3V, если дисплей поддерживает)

GND → GND

SDA → GPIO 2 (I2C SDA)

SCL → GPIO 3 (I2C SCL)

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

📌 Важно: На Raspberry Pi I2C по умолчанию может быть отключен.

2. Включение I2C на Raspberry Pi

Активируем интерфейс I2C:

1. Открываем настройки:

sudo raspi-config

2. Заходим в Interface OptionsI2CEnable

3. Перезагружаем Raspberry Pi:

sudo reboot

3. Установка необходимых библиотек

Установим драйвера для работы с I2C и LCD:

sudo apt update
sudo apt install -y python3-smbus i2c-tools
pip install RPLCD

4. Проверка подключения дисплея

После перезагрузки проверим, найден ли дисплей:

sudo i2cdetect -y 1

Если дисплей подключен, увидите таблицу с адресом, например:

0 1 2 3 4 5 6 7 8 9 A B C D E F
00: -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- 3F -- -- -- -- -- -- --

Здесь 0x3F — адрес дисплея (может быть 0x27 или другой).

5. Программирование в Python

Теперь создаем код для вывода текста на экран.

import smbus2
import time
from RPLCD.i2c import CharLCD
# Адрес дисплея (проверь через i2cdetect)
LCD_ADDRESS = 0x3F # Или 0x27
lcd = CharLCD(i2c_expander='PCF8574', address=LCD_ADDRESS, port=1,
cols=16, rows=2, dotsize=8)
# Выводим текст
lcd.close(clear=True)
lcd.write_string("Привет, мир!")
time.sleep(2)
# Переносим курсор на вторую строку
lcd.cursor_pos = (1, 0)
lcd.write_string("Raspberry Pi :)")
time.sleep(5)
lcd.close(clear=True)

6. Дополнительные возможности

Прокрутка текста

for i in range(16):
lcd.cursor_pos = (0, i)
lcd.write_string(">>Hello<<")
time.sleep(0.2)
lcd.close(clear=True)

Очистка дисплея

lcd.close(clear=True)

Переключение подсветки

lcd.backlight_enabled = False # Выключить
lcd.backlight_enabled = True # Включить

При присутствии кириллицы в тексте, с ней могут быть неполадки. В скором будущем попытаюсь решить данную проблему.