Коротко про індикатор MAX7219
MAX7219 — модуль із вісьмома червоними 7-сегментними розрядами для виведення чисел, часу, лічильників і показників датчиків. Вбудований драйвер сам керує мультиплексуванням індикаторів, тому для передавання даних потрібні лише три сигнальні лінії: DIN, CLK і CS/LOAD.
Ключові характеристики
- Тип індикатора
- 8-розрядний 7-сегментний LED
- Конструкція
- два 4-розрядні блоки
- Колір символів
- червоний
- Драйвер
- MAX7219
- Живлення модуля
- 5 В
- Керування
- DIN, CLK, CS/LOAD
- Каскадування
- DOUT для підключення наступного модуля
- Яскравість
- 16 програмних рівнів [1]
- Розміри модуля
- 83 × 15 × 12 мм
- Вага
- 12 г
Детальний опис та особливості
Вісім розрядів без ручного мультиплексування
Два 4-розрядні індикатори утворюють єдиний восьмирозрядний дисплей. MAX7219 зберігає стан розрядів і самостійно оновлює сегменти, тому мікроконтролеру достатньо передавати значення та команди керування.
Кожним сегментом і десятковою крапкою можна керувати окремо. Модуль відображає цифри 0–9, а також обмежений набір літер і знаків, які можна скласти із семи сегментів, зокрема A, b, C, d, E та F. Для повноцінного тексту або довільної графіки потрібен інший тип дисплея.
Послідовне керування та каскад
DIN приймає дані, CLK задає тактування, а CS/LOAD фіксує передану команду. Вихід DOUT передає дані наступному MAX7219, тому кілька модулів можна об’єднати в довший індикатор зі спільними лініями CLK і CS/LOAD.[1]
Яскравість регулюється програмно. Нижчий рівень зменшує споживання та зазвичай зручніший у приміщенні; під час вибору джерела живлення потрібно враховувати кількість активних сегментів, установлену яскравість і число модулів у каскаді.
Індикація, а не вимірювання
Модуль лише показує дані, які підготував контролер. Для годинника потрібне джерело часу, для термометра — датчик температури, а для вольтметра — відповідна вимірювальна схема з безпечним узгодженням напруги.
Підійде / не підійде
Підійде
- для годинників, таймерів і секундомірів;
- для лічильників подій, імпульсів, обертів або виробів;
- для виведення температури, напруги та інших числових показників;
- для навчальних макетів із 5-вольтовими мікроконтролерами;
- для довших цифрових табло з кількох каскадно з’єднаних модулів.
Не підійде
- для повноцінних текстових повідомлень, меню або довільної графіки;
- для автономного вимірювання без контролера, датчика та програми;
- для живлення від напруги, що не відповідає 5 В;
- для прямого підключення до логіки 3,3 В без перевірки рівнів сигналів;
- для значень, яким недостатньо восьми розрядів і каскадування не передбачене.
Приклади застосування
Годинник або таймер
Контролер може отримувати дату й час від модуля RTC DS3231 і виводити години, хвилини, секунди або дату на восьми розрядах.
Панель вимірювального пристрою
Модуль може показувати числове значення датчика, десяткову крапку та доступний сегментний знак у межах восьми позицій.
Лічильник або табло
Вісім цифр можна використати для кількості подій, обертів, виробів, балів або тривалості процесу.
Підключення
Вимкніть живлення
Перед монтажем звірте маркування контактів на модулі та контролері. Не переставляйте проводи під напругою.
Під’єднайте 5 В і GND
З’єднайте VCC зі стабілізованим джерелом 5 В, а GND — зі спільною землею системи. Не живіть модуль від сигнального GPIO.
Під’єднайте сигнальні лінії
DIN підключіть до виходу даних контролера, CLK — до тактового виходу, CS/LOAD — до окремого керувального GPIO. Номери контактів задаються у програмі або бібліотеці.
Ініціалізуйте драйвер
Після запуску переведіть MAX7219 у робочий режим, задайте вісім розрядів, очистьте дисплей і почніть із невисокої яскравості. Після подачі живлення драйвер запускається з вимкненою індикацією.[1]
Додайте каскад за потреби
З’єднайте DOUT першого модуля з DIN наступного, використайте спільні CLK, CS/LOAD і GND та передбачте достатнє живлення для всіх модулів.
Сумісні контролери та альтернативи
- Для компактного 5-вольтового макета можна обрати Nano V3.0 на ATmega168P або Nano V3.0 на ATmega328P. Варіант на ATmega328P має більше пам’яті для складнішої програми.
- Якщо достатньо чотирьох цифр і потрібна двокрапка для годинника, підійде 4-розрядний індикатор TM1637.
- Для двох рядків тексту або простого меню краще використати символьний LCD 1602; для I2C-підключення потрібно обрати варіант із відповідним адаптером.
Обмеження та безпека
Живлення 5 В і правильна полярність
Подавайте на модуль стабілізовані 5 В і дотримуйтеся позначень VCC та GND. Не покладайтеся на можливі захисні елементи як на заміну правильному підключенню.
Логіка 3,3 В потребує узгодження
За живлення MAX7219 від 5 В гарантований високий рівень на його цифрових входах починається від 3,5 В.[1] Тому пряме керування від ESP32, ESP8266, Raspberry Pi або іншої 3,3-вольтової платформи не слід вважати гарантовано сумісним; за потреби використовуйте перетворювач рівнів.
Передбачте запас живлення
Споживання залежить від яскравості та кількості ввімкнених сегментів. Для тривалої роботи на високій яскравості або каскаду кількох модулів використовуйте окреме стабілізоване джерело 5 В із достатнім запасом і спільною землею з контролером.
Не допускайте короткого замикання
Не кладіть увімкнену плату на металеву поверхню та не допускайте контакту провідних предметів із доріжками й виводами.
FAQ
Скільки GPIO потрібно для керування?
Потрібні три сигнальні лінії: DIN, CLK і CS/LOAD. Окремо підключаються живлення 5 В та GND.
Чому дисплей не світиться одразу після подачі живлення?
MAX7219 запускається з вимкненою індикацією. Програма має перевести драйвер у робочий режим, налаштувати кількість розрядів і яскравість, а потім записати дані.
Чи можна показувати літери?
Модуль відображає лише ті літери й знаки, які можна скласти із семи сегментів. Для звичайного тексту, меню або піктограм потрібен символьний чи графічний дисплей.
Чи можна підключити кілька індикаторів?
Так. DOUT попереднього модуля підключається до DIN наступного, а CLK і CS/LOAD використовуються спільно. Джерело живлення має відповідати сумарному навантаженню.
Чи можна керувати модулем від логіки 3,3 В?
Пряму сумісність не слід припускати. Перевірте гарантовані рівні конкретного контролера й за потреби застосуйте перетворювач логічних рівнів.
Документи та джерела
- Maxim Integrated Products, MAX7219/MAX7221 Serially Interfaced, 8-Digit LED Display Drivers, Rev. 4, 07/2003 — режими MAX7219, керування яскравістю, каскадування та електричні рівні входів.