Микросхема TM1628 — это специализированный драйвер светодиодной индикации с управлением по трёхпроводной шине, и типовая схема включения сводится к питанию 5 В, трём сигнальным линиям STB, CLK, DIO и матрице сегментных выводов для индикаторов и кнопок. Если индикатор на плате не светится или мерцает, чаще всего проблема кроется не в самой микросхеме, а в отсутствии блокировочного конденсатора по питанию, обрыве линии строба или неверной разводке общих выводов индикатора.

Драйвер выпускается китайской компанией Titan Micro Electronics и широко применяется в бытовой технике: микроволновых печах, плитах, весах, термопотах, а также в самодельных устройствах на Arduino. Микросхема управляет мультиплексированными светодиодными индикаторами и одновременно опрашивает матрицу кнопок, что избавляет микроконтроллер от рутинной динамической индикации.

Назначение и основные возможности TM1628

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

Ключевые особенности драйвера:

  • 🔹 Управление светодиодными индикаторами в конфигурации до 10 сегментов × 7 разрядов или 13 сегментов × 4 разряда (режим задаётся командой).
  • 🔹 Сканирование матрицы кнопок 10 × 2 через те же сегментные линии.
  • 🔹 Трёхпроводной последовательный интерфейс: STB (строб), CLK (тактирование), DIO (данные, двунаправленная линия).
  • 🔹 Регулировка яркости программным способом — широтно-импульсная модуляция с несколькими градациями скважности.
  • 🔹 Питание от 5 В, совместимость с логическими уровнями 5-вольтовых микроконтроллеров.

Обратите внимание: линия DIO двунаправленная, то есть по ней микроконтроллер не только передаёт команды и данные, но и считывает состояние кнопок. Это важно при проектировании схемы — линия требует подтяжки и корректного переключения направления порта.

💡

TM1628 снимает с микроконтроллера всю работу по динамической индикации: достаточно записать данные в память драйвера, и он сам будет обновлять индикатор.