Динамическая индикация
Динамическая индикация позволяет управлять многоразрядным индикатором через небольшое число выводов: в каждый момент светится один разряд, а остальные ждут своей очереди. Глаз этого не замечает, если переключать разряды достаточно быстро.
Обновлено Редакция GAW
Динамическая индикация — способ управления многоразрядным индикатором, при котором разряды включаются по очереди. Одноимённые сегменты всех разрядов соединены параллельно, а общие выводы разрядов коммутируются отдельно. Пока включён один разряд, на линии сегментов подают его код; затем разряд выключают, переключают код и включают следующий.
Если весь цикл проходит достаточно быстро, глаз видит все разряды одновременно. В Microchip AN557 четыре разряда горят по 5 мс каждые 20 мс — индикатор обновляется с частотой 50 Гц, и это воспринимается как постоянное свечение. Переключение удобно делать в прерывании таймера.
Выгода — в выводах: 8 + N вместо 8 · N, для четырёх разрядов — 12 вместо 32. Плата — яркость и ток. Каждый разряд светится 1/N периода, то есть с коэффициентом заполнения 1/N, и средний ток сегмента в N раз меньше импульсного. А через общий вывод разряда в импульсе течёт ток всех его светящихся сегментов — восемь по 10 мА дают 80 мА — вдвое больше предельных 40 мА вывода ATmega328P. Поэтому общие выводы разрядов коммутируют транзисторами или сборкой ключей.
Расчёт резисторов, коды цифр и пример на ATmega328P — в статье «Семисегментные индикаторы». Если выводов всё равно не хватает, сегменты подключают через сдвиговый регистр 74HC595.
Частые вопросы
С какой частотой переключать разряды?
Так, чтобы весь индикатор обновлялся не реже, чем глаз замечает мерцание. В Microchip AN557 четыре разряда горят по 5 мс каждые 20 мс — обновление 50 Гц, и индикатор выглядит постоянно светящимся. При большем числе разрядов время на разряд сокращают.
Сколько выводов экономит динамическая индикация?
Вместо 8 · N выводов для N разрядов по 8 сегментов нужно 8 + N: восемь общих линий сегментов и по одной на разряд. Для четырёх разрядов — 12 выводов вместо 32. В Microchip AN529 на тех же выводах ещё и опрашивают клавиатуру 4 × 4 — всего 16 выводов.
Почему при динамической индикации падает яркость?
Потому что каждый разряд светится только часть времени — при N разрядах 1/N периода. Средний ток сегмента в N раз меньше тока в импульсе. Ток импульса поднимают только в пределах, которые разрешает даташит индикатора.
Источники
- Microchip. AN557: Four-Channel Digital Voltmeter with Display and Keyboard (DS00557D) — четыре разряда по 5 мс каждые 20 мс — обновление 50 Гц, которое глаз воспринимает как постоянное свечение; ключи разрядов на NPN или ULN2003
- Microchip. AN529: Multiplexing LED Drive and a 4x4 Keypad Sampling (DS00529E) — четыре разряда и клавиатура 4 × 4 на 16 выводах, ток сегмента не более 7 мА
Нашли ошибку?