ELECTRONICS

Семисегментный индикатор и светодиодные матрицы для Arduino: что выбрать

Когда нужно показать только цифры — время, температуру, счёт, — семисегментный индикатор выигрывает у дисплея по всем статьям: он ярче, читается издалека и с любого угла, стоит копейки и не боится мороза. Внутри это просто набор светодиодов в форме восьмёрки.

Плата за простоту — количество выводов. Один разряд требует восьми линий, четыре разряда напрямую заняли бы больше, чем есть у Arduino UNO. Поэтому в дело вступают драйверы.

Разборы конкретных моделей

Виды индикаторов

Семисегментный одноразрядный

Одна цифра, десять выводов: семь сегментов, точка и два общих. Подключается напрямую к плате через резисторы. Хорош для учебных проектов и там, где нужна одна цифра.

Семисегментный четырёхразрядный

Четыре цифры в одном корпусе, двенадцать выводов. Разряды зажигаются по очереди с большой частотой — глаз видит их как горящие одновременно. Напрямую съедает почти все выводы платы, поэтому чаще берут с драйвером.

Модуль на TM1637

Четыре разряда плюс микросхема-драйвер на одной плате. Занимает всего два вывода и питание, сама разбирается с динамической индикацией и яркостью. Именно этот вариант ставят в часы и термометры.

Матрица 8×8 на MAX7219

Шестьдесят четыре точки, на которых можно рисовать буквы, значки и бегущую строку. Драйвер MAX7219 работает по трём проводам и умеет каскадироваться: несколько матриц соединяются в длинное табло одной цепочкой.

Светодиодная шкала

Десять светодиодов в ряд в одном корпусе. Показывает уровень: громкость, заряд, температуру. По сути десять обычных светодиодов, каждому нужен свой резистор.

Общий катод или общий анод

Все светодиоды внутри индикатора соединены одной стороной. Если объединены минусы — это общий катод: сегмент зажигается высоким уровнем на своём выводе, а общий сажают на землю. Если объединены плюсы — общий анод: общий идёт на питание, а сегмент зажигается низким уровнем.

Внешне они неразличимы, а перепутанный тип даёт одинаковый результат — индикатор просто не светится. Определить можно мультиметром в режиме прозвонки диодов: коснитесь общего вывода красным щупом и любого сегмента чёрным. Если сегмент вспыхнул — это общий анод, если нет — попробуйте наоборот.

Резисторы обязательны

Каждый сегмент — это отдельный светодиод, и каждому нужен свой токоограничивающий резистор на 220–330 Ом. Соблазн поставить один общий резистор велик, но тогда яркость поплывёт: цифра «один» из двух сегментов будет светить ярче, чем «восьмёрка» из семи, потому что ток делится между всеми зажжёнными.

У модулей с драйвером — TM1637, MAX7219 — эта задача решена на плате: драйвер сам стабилизирует ток каждого сегмента, и внешние резисторы не нужны.