В нескольких недавних статьях описывались методы увеличения количества светодиодов, которыми может управлять микропроцессор, при ограниченном количестве управляющих выводов. Стандартная техника мультиплексирования, ставшая популярной для управления многоразрядными семисегментными индикаторами, в разработках с ограниченным количеством управляющих выводов, уступила место мультиплексированию «методом Чарли» ("Charlieplexing").
Чарли Аллен (Charlie Allen) создал эту технику, работая в компании Maxim, которая с тех пор выпускает микросхемы, реализующие алгоритм Чарли. Аллен использовал высокоимпендансное третье состояние выводов, реализованное во многих микропроцессорах, для выключения светодиодов в матрице; в то время как включение отдельных светодиодов производится путем подачи на соответствующие выводы микропроцессора сигналов высокого и низкого уровня. Используя этот метод, можно управлять 9 семисегментными светодиодными матрицами, используя всего 9 выводов микропроцессора, в отличие от 17 выводов при стандартном способе мультиплексирования. Для N выводов, с использованием мультиплексирования «методом Чарли» можно индивидуально управлять N×(N–1) светодиодами.
Один из читателей, схвативший идею мультиплексирования «методом Чарли», отметил очень маленький коэффициент заполнения при использовании данного метода и, как следствие, низкую его эффективность. В предыдущей Дизайн Идее было проведено сравнение стандартного метода мультиплексирования с мультиплексированием «методом Чарли». При использовании мультиплексирования «методом Чарли», максимальный коэффициент заполнения для дисплея из 20 светодиодов составляет всего 5%.
Однако, недостаточное значение коэффициента заполнения относится не к самому методу, а, скорее к возможностям буферных каскадов микропроцессора и наличию цепей утечки. Один вывод микропроцессора обычно не может обеспечить ток, необходимый для эффективного управления несколькими светодиодами, таким образом, требуется, чтобы в каждый момент времени для одного светодиода использовался один вывод в качестве источника тока и один - в качестве приемника. Однако, добавление транзистора и двух резисторов позволяет обойти эти проблемы.
Если реорганизовать светодиоды в подобный перекрестный массив и в каждую колонку добавить усилитель тока на транзисторе, то можно увидеть, что коэффициент заполнения для мультиплексирования «методом Чарли» станет практически таким же как и для стандартного метода мультиплексирования (рис.1). Для 20 светодиодов, организованных в матрицу с 5 колонками, на каждый светодиод будет приходиться примерно 20% времени, что сравнимо с 25% времени для стандартного варианта мультиплексирования, при использовании всего 5 выводов микропроцессора вместо 9 в стандартном варианте (Таблица 1*).
Одним из недостатков добавления транзистора и резисторов в каждую колонку, является то, что встает необходимость использования дополнительных компонентов для достижения разумной яркости свечения при использовании большого количества. Это решение, однако, является лучшим, чем альтернативное, использующее дорогостоящие ИС, и не худшим по сравнению со стандартным способом мультиплексирования, при котором также требуются дополнительные транзисторы и резисторы. С точки зрения стоимости и преимуществ, можно отметить, что когда матрица станет размером в 90 светодиодов, стоимость печатной платы и (PCB) и дополнительных транзисторов/резисторов померкнет на фоне стоимости самой светодиодной матрицы.
При детальном исследовании схемы, можно отметить, что для N×(N–1)=20 светодиодов используется всего 5 выводов, от P1 до P5, микропроцессора. Если, например, на выводе P3 присутствует сигнал высокого уровня, на эмиттере транзистора Q3 уровень напряжения составит около 4.4 В, и можно выключать светодиоды D13, D23, D43 или D53, подавая на выводы P1, P2, P4 или P5 сигнал низкого уровня. Любой вывод микропроцессора, сконфигурированный как входной или переведенный в состояние с высоким импедансом, также будет гасить соответствующий светодиод.
Если на выводах P1 и P4 присутствует сигнал низкого уровня, на выводе P3 – высокого, а выводы P2 и P5 находятся в высокоимпедансном состоянии. При подаче на вывод P3 сигнала высокого уровня, транзистор Q3 открывается, все другие транзисторы находятся в закрытом состоянии, гарантирующем отсутствия протекания тока, или в состоянии с высоким импедансом, при котором отсутствует базовый ток и транзисторы заведомо находятся в непроводящем состоянии. При этом все диоды в третьей колонке могут находиться во включенном состоянии, но только D13 и D43 имеют соединение с общим проводом через выводы P1 и P4 микроконтроллера, которые находятся в состоянии с низким логическим уровнем и выполняют функции токоограничительных резисторов сопротивлением примерно 100.
Диоды D23 и D53 присоединенные к входам находящимся в состоянии высокого импеданса начнут проводить ток только когда они будут соединены с общим проводом через токоограничительные резисторы сопротивлением 100 при открывании транзисторов Q2 и Q5. Поскольку типичное падение напряжения на открытом светодиоде составляет, примерно, 2.2 В на эмиттерах Q2 и Q5 падение напряжения составит менее 1.6 В, как вытекает из следующего уравнения:
5ВCC–0.6 В (Q3)–2.2 В (D23 или D53)–0.6 В (Q3 или Q5)–ILED×100<1.6 В,
где ILED – сила тока через светодиоды. Этот сценарий не позволяет ни одному из светодиодов, расположенных в Колонке 2 или Колонке 5, переходить во включенное состояние, что могло бы привести к нежелательным эффектам.
Таблица 1 Количество светодиодов и коэффициент заполнения |
|||
Количество |
Количество |
Коэффициент заполнения |
Коэффициент заполнения |
3 |
6 |
33.3 |
50/5 |
4 |
12 |
25 |
33/7 |
5 |
20 |
20 |
25/8 |
6 |
30 |
16.6 |
20/11 |
7 |
42 |
14.2 |
16.6/13 |
8 |
56 |
12.5 |
14.2/15 |
9 |
72 |
11.1 |
12.5/17 |
10 |
90 |
10 |
11.1/19 |