Схема управления яркостью многоразрядного семисегментного дисплея

Allegro A6275

Недавно мне понадобилось управлять девятью семисегментными дисплеями через последовательный порт микроконтроллера. Сложность, с которой я столкнулся, заключалась в необходимости обеспечить непрерывную регулировку яркости для всех цифр – от полного затемнения до максимального уровня. Просто использовать очевидное решение, взяв преобразователь последовательного кода в параллельный 74HC595, управляющий сегментами через последовательные резисторы, я не мог, поскольку при этом потребовался бы управляемый источник питания для дисплеев – подход неэлегантный и неэффективный. Я рассматривал возможность программного управления коэффициентом заполнения управляющего сигнала дисплеев, но, как давний специалист по аналоговым схемам, я чувствовал себя обязанным найти способ, который не требовал бы написания дополнительного кода. Кроме того, я израсходовал все порты ввода-вывода своего микроконтроллера, поэтому программное решение повлекло бы замену процессоров. Allegro Microsystems предлагает несколько компонентов для управления дисплеями с общим анодом. Каждый из них содержит последовательной интерфейс данных и встроенный контур управления, который устанавливает равные токи для всех включенных сегментов, используя единственный резистор, подключенный к земле. Я выбрал микросхемы Allegro A6275E (Рисунок 1), образующие идеальный комплект с каждой цифрой дисплея. Теперь я должен был одновременно менять сопротивления девяти резисторов.

Аналоговый контур управления обеспечивает регулируемый «земляной» узел для управления током, протекающим через ​резисторы, задающие токи сегментов.
Рисунок 1. Аналоговый контур управления обеспечивает регулируемый «земляной» узел для
управления током, протекающим через резисторы, задающие токи сегментов.

Конечно же, я обманул. Вместо того чтобы изменять сопротивления резисторов, я сместил их кажущуюся точку заземления с помощью простой аналоговой схемы управления, состоящей из сдвоенного операционного усилителя, мощного MOSFET и нескольких пассивных компонентов. IC1A буферизует выход внутреннего источника опорного напряжения 1.23 В микросхемы A6275, чтобы исключить влияние потенциометра R4, на который подается это напряжение, на токи сегментов «ведущего» A6275. IC1B управляет затвором транзистора Q1, поддерживая напряжение на его стоке равным напряжению на движке потенциометра. Благодаря этому напряжение на резисторе 909 Ом изменяется между уровнями земли (почти) и опорного напряжения, обеспечивает плавную регулировку интенсивности от максимума (20 мА для резистора 909 Ом) до нуля. Небольшой разброс опорных напряжений A6275 и сопротивлений резисторов 909 Ом приводит к некоторым вариациям яркости между цифрами, но в моем приложении эти вариации были незаметны.

Следует отметить один важный момент, касающийся включения IC1B: обратная связь от стока Q1 идет на неинвертирующий вход микросхемы. MOSFET добавляет инверсию внутри основного контура регулирования, поэтому использование неинвертирующего входа операционного усилителя в качестве точки подключения обратной связи образует общую отрицательную обратную связь. C1 и R3 формируют доминирующий полюс в цепи обратной связи, а R2 изолирует емкость затвора Q1, чтобы исключить самовозбуждение IC1B. Allegro предостерегает от использования чрезмерной емкости на выводе опорного напряжения A6275, поэтому я изолировал эту точку от конденсатора резистором R5. Операционный усилитель IC1 должен иметь rail-to-rail выход, его вход должен позволять работать при напряжении отрицательной шины питания, а общее напряжение между шинами питания должно составлять 5 В. Транзистор Q1 должен иметь низкое сопротивление открытого канала при напряжении затвора 5 В. Использование STP30NE06L от ST Microelectronics с сопротивлением 0.045 Ом, вероятно, было излишним, но его цена была меньше 1 доллара. Выбор остальных компонентов некритичен. Вы можете поэкспериментировать с разными законами изменения сопротивления потенциометра; в моем случае аудио потенциометр (с показательной характеристикой) давал приятные «ощущения» при регулировке яркости.

Материалы по теме

  1. Datasheet Allegro A6275
  2. Datasheet Analog Devices AD8542
  3. Datasheet STMicroelectronics STP30NE06L
  4. Datasheet Panasonic LN518OA

EDN

Перевод: AlexAAN по заказу РадиоЛоцман

На английском языке: Circuit controls brightness of multiple displays

Изготовление 1-4 слойных печатных плат за $2

13 предложений от 13 поставщиков
LED Driver IC 8 Output Linear Shift Register 75.5mA 16-SOIC
A6275ELW, Светодиодный драйвер, 8-битный последовательный ввод
153 ₽
A6275ELWTRT
Allegro
по запросу
ТаймЧипс
Россия
A6275SA
по запросу
Зенер
Россия и страны ТС
A6275EA-T
по запросу
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя
Фрагменты обсуждения:Полный вариант обсуждения »
  • Как по мне, то для человека, который можно было найти другое решение. Например, доставить ещё один '595 и в последовательном коде выдать двоичный код для управление током через сегменты... Причём кода было бы не так много. Или, вообще, использовать сигнал гашения в '595 для ШИМ управлением яркостью. Возможно, что автору было удобнее ставить переменный резистор, а не использовать кнопочное управление. Да и это лишь кусок схемы проекта.
  • Непонятная проблема. Берем TM1637 с двухпроводным управлением, включая регулируемую по 7 градациям яркость...
  • Это вы роботу советуйте? Ну ну...
  • Нет, я выражаю непонимание проблемы автора статьи.
  • Я тоже