Коротко про LCD 12864 ST7920
LCD 12864 — графічний рідкокристалічний дисплей 128 × 64 пікселі на контролері ST7920 для меню, показань датчиків, станів обладнання, піктограм і нескладних графіків.
Модуль живиться від 5 В і підтримує 8-бітний, 4-бітний та синхронний послідовний інтерфейси. Для прямого керування найзручніша 5-вольтова мікроконтролерна плата; виходи контролерів із логікою 3,3 В потребують окремої перевірки та, за необхідності, узгодження рівнів.
Ключові характеристики
- Тип
- графічний LCD-модуль
- Роздільна здатність
- 128 × 64 пікселі
- Контролер дисплея
- ST7920
- Робоча напруга
- 5 В
- Інтерфейси
- 8-бітний і 4-бітний паралельні, синхронний serial bus
- Розміри модуля
- 93 × 86 × 19 мм
- Маса
- 74 г
- Робоча температура
- −20…+70 °C
Детальний опис та особливості
Текст і графіка в одному інтерфейсі
Матриця 128 × 64 дає змогу поєднувати числові значення, короткі написи, піктограми, шкали та прості графіки. Модуль підходить для локальних панелей, де символьного екрана недостатньо, але кольоровий або сенсорний дисплей не потрібен.
Послідовне або паралельне керування
Послідовний режим потребує менше сигнальних ліній, тому залишає більше виводів мікроконтролера для датчиків, кнопок та іншої периферії. Паралельні режими доречні, коли схема вже розведена під відповідну шину. У контролері ST7920 контакт PSB обирає послідовний або паралельний інтерфейс, а 8- чи 4-бітний формат задається для паралельної шини.[1]
Для Arduino-сумісних проєктів бібліотека U8g2 має окремі конструктори для ST7920 128 × 64 і показує призначення ліній Clock, Data та Chip Select у послідовному режимі.[2] У програмі потрібно вибрати саме драйвер ST7920 і фактичну схему підключення.
Живлення та логічні рівні
Модуль працює від 5 В. Для ST7920 мінімальний гарантований високий рівень входу визначено як 0,7 від напруги живлення, тому прямий сигнал 3,3 В при живленні дисплея від 5 В не слід вважати гарантовано сумісним.[1] Для ESP32, ESP8266, Raspberry Pi та інших 3,3-вольтових контролерів передбачте належне узгодження логічних рівнів.
Підійде / не підійде
Підійде
- для панелей керування, меню та індикаторів стану;
- для виведення показань датчиків, шкал і простих графіків;
- для 5-вольтових Arduino-сумісних контролерів із достатньою кількістю виводів;
- для схем із послідовним або паралельним керуванням ST7920;
- для корпусів, у яких передбачено місце під модуль 93 × 86 × 19 мм.
Не підійде
- як кольоровий або сенсорний екран;
- для прямого підключення до 3,3-вольтової логіки без перевірки допустимих рівнів;
- як заміна дисплея з іншим контролером без зміни програми та розпіновки;
- для відео, фотографій або інтерфейсів із високою частотою оновлення;
- як механічна заміна без звіряння розмірів, отвору в панелі та точок кріплення.
Приклади застосування
Панель метеостанції
На одному екрані можна розмістити температуру, вологість, тиск, піктограму стану та невеликий графік зміни показань.
Меню контролера обладнання
Дисплей може показувати вибраний режим, задані параметри, попередження та підказки для кнопок або енкодера.
Навчальний проєкт зі ST7920
Модуль дає змогу відпрацювати виведення тексту, бітових зображень і графічних примітивів, а також порівняти послідовне та паралельне підключення.
Підключення та перший запуск
-
Звірте контакти конкретного модуля
За вимкненого живлення знайдіть GND, VCC, V0, PSB та керувальні лінії за написами на платі. Не переносьте порядок контактів зі схеми зовні схожого дисплея.
-
Подайте живлення 5 В
З’єднайте землю дисплея і контролера, перевірте полярність та лише після цього подайте 5 В на вхід живлення модуля.
-
Оберіть інтерфейс
Для послідовного режиму PSB має бути в низькому стані, для паралельного — у високому.[1] У послідовному режимі функції керувальних контактів змінюються на Chip Select, Data та Clock.
-
Налаштуйте контраст
Встановіть коректну напругу на вході V0 відповідно до розводки модуля. Порожній екран після запуску часто потребує перевірки саме живлення, V0, PSB і спільної землі.
-
Запустіть тест ST7920 128 × 64
У U8g2 виберіть конструктор для ST7920 128 × 64, укажіть фактичні контакти та спочатку виведіть простий тестовий шаблон. Меню й датчики додавайте після стабільної роботи базового прикладу.
Сумісні товари та альтернативи
- Для 5-вольтового керування та компактного прототипу підійде Pro Micro ATmega32U4 5 В; для послідовного режиму потрібно призначити цифрові виходи на Clock, Data та Chip Select.
- Якщо потрібен значно компактніший екран 128 × 64 з вибором I2C або SPI, розгляньте OLED 0,96″ SSD1306. Це інший контролер і формфактор, тому схема та бібліотечні налаштування відрізняються.
Обмеження та безпека
Не плутайте живлення та логічні рівні
Живлення модуля становить 5 В, але сумісність сигнальних ліній потрібно перевіряти окремо. Не підключайте 3,3-вольтовий контролер навмання; використайте належне узгодження рівнів, якщо високий рівень його виходів не відповідає вимогам ST7920.
Перевіряйте полярність до ввімкнення
Помилкове підключення VCC, GND або контактів підсвічування може пошкодити дисплей. Усі з’єднання змінюйте лише за вимкненого живлення та звіряйте з маркуванням отриманої плати.
PSB має відповідати програмі
Якщо апаратно вибрано послідовний режим, а програма налаштована на паралельний, або навпаки, модуль не працюватиме коректно.
Бережіть LCD-панель під час монтажу
Не тисніть на скло та металеву рамку, не згинайте плату й уникайте статичної електрики. Перед виготовленням корпусу перевірте фактичні точки кріплення модуля.
FAQ
Чи можна підключити LCD 12864 до Arduino?
Так. Для ST7920 128 × 64 є підтримка в U8g2. Найпростіше використовувати 5-вольтову Arduino-сумісну плату, правильно вибрати інтерфейс і вказати фактичні контакти в конструкторі бібліотеки.
Чи можна напряму керувати дисплеєм від ESP32 або Raspberry Pi?
Пряму сумісність 3,3-вольтових виходів із модулем, що живиться від 5 В, не слід вважати гарантованою. Перевірте електричні рівні та за потреби застосуйте перетворювач логічних рівнів.
Який режим використовувати — послідовний чи паралельний?
Послідовний режим зручний, коли потрібно заощадити виводи мікроконтролера. Паралельний варто обирати, якщо він уже передбачений схемою. Положення PSB і налаштування бібліотеки мають збігатися.
Чому підсвічування працює, а зображення немає?
Перевірте живлення 5 В, спільну землю, напругу V0, стан PSB, лінії керування та конструктор ST7920 128 × 64 у програмі. Підсвічування саме по собі не підтверджує правильне налаштування контролера дисплея.
Чи можна використати звичайний драйвер SPI-дисплея?
Потрібен драйвер або бібліотечний конструктор саме для ST7920. Однакова назва сигнальних ліній не робить дисплеї з різними контролерами програмно взаємозамінними.
Документи та джерела
- Sitronix, ST7920 LCD Controller/Driver Specification, V3.0, 11.10.2002 — режими інтерфейсу, функція PSB та вимоги до логічних рівнів контролера.
- U8g2 Wiki, Hardware Setup and Wiring — вибір конструктора ST7920 128 × 64 і призначення сигнальних ліній у послідовному режимі.