Оглавление
Arduino – это удобная и простая платформа для разработки электронных устройств. Часто в проектах требуется отображать информацию, например, данные с датчиков, состояние системы или простые интерфейсы управления. Для этого используются различные типы дисплеев, которые можно подключить к Ардуино.
| Тип дисплея | Разрешение | Интерфейс | Питание | Примечания |
|---|---|---|---|---|
| LCD 1602 | 16×2 | Параллельный (или I2C) | 5V | Популярен для вывода текста, доступен в вариантах с и без I2C интерфейса |
| OLED 128×64 | 128×64 | I2C, SPI | 3.3V/5V | Отличается высокой контрастностью, подходит для текстов и простых изображений |
| TFT 2.4″ (ILI9341) | 240×320 | SPI | 3.3V | Цветной дисплей для графики, изображений и интерфейсов |
| Nokia 5110 | 84×48 | SPI | 3.3V | Маленький монохромный дисплей, часто используется для простых графических интерфейсов |
| ТFT 1.8″ (ST7735) | 128×160 | SPI | 3.3V | Компактный дисплей для небольших графических проектов |
| 7-сегментный дисплей | 4-7 цифр | Параллельный (или с драйвером, например TM1637) | 5V | Подходит для отображения чисел, используется в счетчиках и индикаторах |
| LCD 128×64 (ST7920) | 128×64 | SPI, Параллельный | 5V | Для графических проектов с большей плотностью пикселей, поддерживает SPI |
| TFT 3.5″ (ILI9486) | 320×480 | SPI | 3.3V/5V | Высококачественные дисплеи с большим разрешением для сложных графических интерфейсов |
Предлагаем рассмотреть разные виды дисплеев, их схемы подключения и примеры программного кода. Будут рассмотрены как популярные модули, такие как LCD 1602, OLED 128×64, TFT 2.4″, семисегментные индикаторы, так и более сложные, включая графические экраны от мобильных телефонов.
Подключение LCD-дисплея
Жидкокристаллические экраны, сокращенно LCD, являются одними из самых распространенных дисплеев для работы с Arduino. Они отличаются доступностью, малым потреблением энергии и простотой в управлении.
Подключение LCD 1602 без интерфейса I2C
LCD 1602 – это дисплей с двумя строками по 16 символов каждая. Он использует контроллер HD44780, который требует как минимум 6 цифровых пинов Ардуино для управления.
Необходимые компоненты:
- Arduino Uno, Nano или Mega
- Дисплей LCD 1602
- Резистор 10 кОм (для регулировки контрастности)
- Перемычки
Схема подключения:
- GND → GND
- VCC → 5V Arduino
- V0 → Средний вывод потенциометра (управление контрастностью)
- RS → 12 пин
- RW → GND
- E → 11 пин
- D4 → 5 пин
- D5 → 4 пин
- D6 → 3 пин
- D7 → 2 пин
- A → 5V (подсветка)
- K → GND (подсветка)
Пример кода:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
lcd.begin(16, 2);
lcd.print(«Hello, Arduino!»);
}void loop() {
}
Этот код инициализирует дисплей и выводит строку «Hello, Arduino!» в первой строке дисплея.
Подключение LCD 1602 с интерфейсом I2C
Подключение LCD через I2C значительно упрощает схему, так как вместо 6-8 проводов требуется всего 2. Для этого используется модуль PCF8574, который позволяет управлять дисплеем через шину I2C.
Схема подключения:
- GND → GND
- VCC → 5V Arduino
- SDA → A4
- SCL → A5
Пример кода для I2C:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
lcd.init();
lcd.backlight();
lcd.print(«I2C LCD ready!»);
}void loop() {
}
Если дисплей не работает, попробуйте изменить адрес 0x27 на 0x3F, так как у разных моделей может быть разный I2C-адрес.
Подключение LCD 1602 к Arduino Nano
Для Arduino Nano схема подключения аналогична Arduino Uno, однако следует учитывать, что некоторые модели Nano работают от 3.3V, и в этом случае LCD 1602 может работать нестабильно.
Подключение OLED-дисплея
OLED-дисплеи работают по технологии органических светодиодов, благодаря чему они обладают высокой контрастностью и низким энергопотреблением.
Подключение OLED 128×64 по I2C
Один из самых популярных OLED-дисплеев – это SSD1306 128×64, который можно подключить через интерфейс I2C.
Схема подключения:
- VCC → 5V Arduino
- GND → GND
- SDA → A4
- SCL → A5
Пример кода для OLED 128×64:
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
void setup() {
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0, 10);
display.println(«Hello, OLED!»);
display.display();
}void loop() {
}
Если дисплей не работает, проверьте адрес 0x3C, иногда используется 0x3D.
Подключение OLED-дисплея к Arduino Nano
Для Arduino Nano схема аналогична Arduino Uno, но стоит учитывать, что OLED-дисплеи могут работать как от 3.3V, так и от 5V.
Подключение TFT-дисплея
TFT-дисплеи позволяют отображать графику и текст в цвете, они используются для более сложных проектов.
Подключение TFT 2.4″ по SPI
Для подключения TFT-дисплея 2.4″ часто используется интерфейс SPI.
Схема подключения:
- VCC → 5V Arduino
- GND → GND
- CS → 10 пин
- RST → 9 пин
- DC → 8 пин
- MOSI → 11 пин
- SCK → 13 пин
Пример кода для TFT-дисплея:
#include <Adafruit_GFX.h>
#include <Adafruit_ILI9341.h>#define TFT_CS 10
#define TFT_RST 9
#define TFT_DC 8Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_RST);
void setup() {
tft.begin();
tft.fillScreen(ILI9341_BLACK);
tft.setCursor(10, 10);
tft.setTextColor(ILI9341_WHITE);
tft.setTextSize(2);
tft.println(«Hello, TFT!»);
}void loop() {
}
TFT-дисплеи потребляют больше энергии, чем LCD и OLED, поэтому могут требовать отдельного источника питания.
Подключение 7-сегментного LED
Семисегментные индикаторы используются для вывода чисел и символов.
Подключение с драйвером TM1637
Для подключения 4-значного 7-сегментного дисплея удобно использовать TM1637.

Схема подключения:
- CLK → D3 Arduino
- DIO → D2 Arduino
Пример кода:
#include <TM1637Display.h>
#define CLK 3
#define DIO 2TM1637Display display(CLK, DIO);
void setup() {
display.setBrightness(7);
display.showNumberDec(1234);
}void loop() {
}
Подключение экрана Nokia 5110
Дисплей Nokia 5110 – это монохромный графический LCD-экран с разрешением 84×48 пикселей. Он использует контроллер PCD8544, который позволяет управлять дисплеем через SPI-интерфейс.
Схема подключения Nokia 5110 к Arduino
- VCC → 3.3V Arduino (важно, так как дисплей не работает от 5V)
- GND → GND Arduino
- CLK (SCK) → D13
- DIN (MOSI) → D11
- DC → D9
- CE (CS) → D10
- RST → D8
- LED → 3.3V (или через резистор 330 Ом на GND для регулировки подсветки)
Пример кода для Nokia 5110
#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>#define CLK 13
#define DIN 11
#define DC 9
#define CE 10
#define RST 8Adafruit_PCD8544 display = Adafruit_PCD8544(CLK, DIN, DC, CE, RST);
void setup() {
display.begin();
display.setContrast(50);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(BLACK);
display.setCursor(0, 10);
display.println(«Hello, Nokia 5110!»);
display.display();
}void loop() {
}
Дисплей Nokia 5110 потребляет мало энергии и идеально подходит для проектов с питанием от батарей.
Подключение дисплея 128×64
Графический дисплей 128×64 чаще всего использует контроллер ST7920 или KS0108, который может работать в SPI или параллельном режиме.
Схема подключения дисплея 128×64 по SPI
- VCC → 5V Arduino
- GND → GND
- CS → D10
- RST → D9
- RS (D/C) → D8
- SCLK → D13
- SID (MOSI) → D11
Пример кода для дисплея 128×64:
#include <U8g2lib.h>
U8G2_ST7920_128X64_F_HW_SPI display(U8G2_R0, 10, 9, 8);
void setup() {
display.begin();
display.clearBuffer();
display.setFont(u8g2_font_ncenB08_tr);
display.drawStr(10, 10, «128×64 Display!»);
display.sendBuffer();
}void loop() {
}
Другие дисплеи от телефонов
Вообще многие экраны от мобильных телефонов можно подключить к Ардуино, но не все они работают на 5V. Чаще всего встречаются с контроллерами ILI9341, ST7735, SSD1963, работающие по SPI или параллельному интерфейсу.
Подключение TFT-дисплея ILI9341
- VCC → 3.3V (не подключать к 5V)
- GND → GND
- CS → D10 Arduino
- RST → D9
- DC → D8
- MOSI → D11
- SCLK → D13
Пример кода для дисплея ILI9341:
#include <Adafruit_GFX.h>
#include <Adafruit_ILI9341.h>#define TFT_CS 10
#define TFT_RST 9
#define TFT_DC 8Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_RST);
void setup() {
tft.begin();
tft.fillScreen(ILI9341_BLACK);
tft.setCursor(10, 10);
tft.setTextColor(ILI9341_WHITE);
tft.setTextSize(2);
tft.println(«Phone Display»);
}void loop() {
}
Для успешного подключения дисплея от телефона иногда требуются логические преобразователи уровня 5V → 3.3V, поскольку большинство мобильных экранов работают от 3.3V.
Цветные экраны
Если вам нужен цветной дисплей, то наилучшим выбором будут TFT-дисплеи. Они работают через SPI или параллельный интерфейс и позволяют выводить изображения, текст и графику.
Подключение TFT-дисплея 2.8″
- VCC → 5V Arduino
- GND → GND
- CS → D10
- RST → D9
- DC → D8
- MOSI → D11
- SCLK → D13
Пример кода для TFT 2.8″
#include <Adafruit_GFX.h>
#include <Adafruit_ILI9341.h>#define TFT_CS 10
#define TFT_RST 9
#define TFT_DC 8Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_RST);
void setup() {
tft.begin();
tft.fillScreen(ILI9341_BLUE);
tft.setCursor(10, 10);
tft.setTextColor(ILI9341_WHITE);
tft.setTextSize(2);
tft.println(«Color TFT!»);
}void loop() {
}
TFT-дисплеи позволяют отображать изображения и анимацию, но требуют больше памяти и питания, чем LCD или OLED.
Думаем, этого достаточно. Мы рассмотрели практически все способы подключения экранов к этой платформе, от простых LCD до цветных TFT и дисплеев от телефонов.
Основные выводы:
- LCD 1602 удобен для текстовой информации, а с I2C модулем требует всего 2 провода
- OLED 128×64 – компактный и контрастный, поддерживает I2C и SPI
- TFT-дисплеи позволяют выводить графику и цветные изображения
- Nokia 5110 и 128×64 – хорошие варианты для простых графических интерфейсов
- Экраны от телефонов можно подключать, но требуется 3.3V и логический преобразователь уровня
При выборе дисплея важно учитывать размер, тип интерфейса и поддержку библиотек. Если проект требует простого вывода текста, лучше использовать LCD или OLED. Если же необходимо отображать графику, то стоит обратить внимание на TFT и дисплеи от мобильных устройств. Всем удачи в экспериментах!
Полезные ссылки
Вот несколько популярных сайтов и ресурсов, на которых вы можете найти полезную информацию и литературу по Arduino, а также проекты и инструкции для подключения различных устройств, включая дисплеи:
Официальный сайт Arduino является основным источником информации. Здесь вы найдете документацию, примеры кода, форум и магазины для покупки компонентов.
2. Instructables Arduino Projects
На сайте Instructables множество пошаговых руководств по созданию проектов на основе Arduino, включая подключение дисплеев и других компонентов.
Adafruit предлагает множество подробных руководств по использованию Arduino с их компонентами, включая дисплеи и другие сенсоры.
4. SparkFun
SparkFun предлагает большое количество материалов и руководств для начинающих и опытных пользователей Arduino, а также продает различные компоненты, включая дисплеи.
Здесь можно найти проекты, созданные другими пользователями Arduino. Это отличное место для поиска идей для своего проекта и примеров кода.
6. Hackster.io
На Hackster.io собраны проекты и уроки по Arduino. Вы можете найти пошаговые инструкции и идеи для работы с дисплеями, сенсорами и многими другими компонентами.
7. GitHub
GitHub — это большая база репозиториев с открытым исходным кодом. Вы можете найти множество библиотек для работы с Arduino, а также примеры проектов с дисплеями и другими устройствами. Для поиска можно использовать ключевые слова, такие как «Arduino display» или «Arduino projects».











