Статический светодиодный цифровой индикатор, управляемый по SPI

Воскресенье , 1, Июнь 2008 Комментарии к записи Статический светодиодный цифровой индикатор, управляемый по SPI отключены

Семисегментный светодиодный цифровой индикатор

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

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

На рис.1 представлена функциональная схема модуля. Каждым семисегментным индикатором управляет отдельная микросхема типа SN74HC595D, содержащая:

  • 8-разрядный сдвиговый регистр;
  • параллельный регистр-защелку;
  • управляемый выходной буфер.

Функциональная схема многоразрядного семисегментного светодиодного цифрового индикатора

Рис.1. Функциональная схема универсального многоразрядного семисегментного светодиодного цифрового индикатора.

Последовательно загружаемые в сдвиговый регистр биты данных подаются на вход SIN (Serial Input). Их фиксация в сдвиговом регистре (стробирование) происходит по перепаду импульсного сигнала на входе SRCK из состояния логического "0" в лог. "1". Когда загрузка сдвигового регистра завершена, его состояние копирует и запоминает регистр-защелка. Происходит это по перепаду из лог. "0" в лог. "1" подаваемого на вход RCK специального импульса (см. рис.2). Но на выходы микросхемы Q0..Q7 состояние регистра-защелки поступит лишь при логическом "0" на входе OE (Output Enable). В противном случае (OE = лог. "1") выходы микросхемы отключаются (переходят в высокоимпедансное сосотояние) и индикатор гаснет. Подав лог. "0" на вход SRST можно сбросить в ноль сдвиговый регистр (но не регистр-защелку) независимо от сигналов SIN и SRCK. Последовательное соединение микросхем SN74HC595D в цепочку позволяет наращивать разрядность светодиодного семисегментного индикатора. Управляющие сигналы при этом остаются прежними, соответственно увеличивается лишь число загружаемых бит данных.

Последовательная загрузка семисегментного кода

Рис.2. Загрузка кода цифры "5" для индикатора с общим анодом (см. табл.2).

На рис.3 приведена принципиальная электрическая схема такого модуля индикации на два знакоместа. Резисторы R1..R5 определяют состояние входных сигналов при отключении модуля от микроконтроллерной схемы и служат "нагрузкой" линий управления индикатором. Гасящие резисторы R6..R21 определяют ток каждого сегмента при его включении, который во всяком случае не должен превышать максимально допустимый для выходов микросхемы SN74HC595D (см. таблицу 1). Установка перемычки J1 на замыкание ее средней точки на общий провод GND или провод питания +Vcc позволяет использовать в схеме семисегментные светодиодные индикаторы как с общим катодом, так и с общим анодом. Конденсаторы C1..C3 предотвращают сбои от возможных внешних помех по питанию.

Схема семисегментного светодиодного индикатора на два знакоместа

Рис.3. Схема модуля индикации на два знакоместа.

Таблица 1. Некоторые технические характеристики микросхемы SN74HC595D

Параметр Условия измерения Значение
Uпит. 2…6
Iпотр.,мкА < 80
Uвых.лог."1" Uпит. = 4,5В > 3,98
Iвых. = -6мА
Tокр.ср. = 25oC
Uвых.лог."0" Uпит. = 4,5В < 0,26
Iвых. = 6мА
Tокр.ср. = 25oC
Cвх.,пФ < 10

На рис.4 приведен внешний вид модуля индикации. Модуль разработан под применение светодиодных семисегментных индикаторов производства фирмы Kingbright серий SA05-11 (с общим анодом) или SC05-11 (с общим катодом) или им аналогичных с высотой знака 12,7 мм. В результате получился компактный модуль индикации, габаритные размеры которого не намного больше размеров самих индикаторов. Сделать это оказалось совсем не сложно, так как каждая микросхема SN74HC595D в корпусе SOIC-16 вполне умещается под "своим" индикатором с другой стороны двухсторонней печатной платы. Соответствие выходов микросхем и сегментов индикатора выбрано исходя из простоты трассировки печатных проводников на плате модуля. Также под поверхностный монтаж применены резисторы и конденсаторы типоразмером 0805. Габаритные размеры печатной платы 43,2 x 22,9 мм. Ее чертеж и установка на ней элементов приведены на рис.5. С одной стороны платы устанавливаются светодиодные семисегментные индикаторы L1 и L2, резисторы R1..R5 и конденсатор C1, а с другой — все остальные елементы: микросхемы D1 и D2, гасящие резисторы R6..R21, конденсаторы C2 и C3, а также запаивается перемычка J1.

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

Рис.4. Светодиодный семисегментный индикатор на два знакоместа.

Модуль работает при напряжении питания от +2,8 В до +5,5 В. Значение напряжения питания и тип индикаторов определяют и требуемое сопротивление гасящих резисторов R6..R21 исходя из тока одного сегмента в пределах 4…4,5 мА (см. таблицу 2).

Таблица 2. Номиналы гасящих резисторов R6..R21

Цвет Напряжение питания
+3,3В +4,5В +5,0В
Красный 360 Ом 620 Ом 750 Ом
Желтый 330 Ом 620 Ом 750 Ом
Зеленый 300 Ом 560 Ом 680 Ом

Печатная плата семисегментного светодиодного индикатора на два знакоместа

Рис.5. Печатная плата модуля индикации на два знакоместа (масштаб 2:1).

Как подключить питание и управляющие сигналы к плате модуля индикации показано на рис.6. Важным преимуществом описываемого модуля перед другими схемами индикации является возможность каскадного соединения нескольких таких модулей в цепочку как показано на рис.7, что можно использовать, например, для индикации сразу нескольких цифровых значений в каком-нибудь приборе при том же наборе линий управления. А так как этих линий немного, и соединительный кабель между модулем индикации и микроконтроллерной схемой содержит всего несколько проводов, то модуль можно свободно размещать в любом удобном месте корпуса прибора. Пример подключения такого модуля индикации при помощи кабеля длиной около 70 см показан на приведенном на рис.8 фото, сопротивление "нагрузочных" резисторов R1..R5 при этом составляло 10 кОм и сбоев в работе не наблюдалось.

Управление семисегментным светодиодным индикатором

Рис.6. Подача питания и сигналов управления.

Каскадное включение семисегментных светодиодных индикаторов

Рис.7. Каскадное включение нескольких модулей.

Размещение семисегментного светодиодного индикатора

Рис.8. Пример размещения модуля индикации внутри прибора.

Загружать информацию на отображение в модуль индикации удобнее всего через синхронный порт SPI, которым теперь оснащены почти все микроконтроллеры, выпускаемые, например, фирмой Atmel. Учитывая, что этот же порт используется часто и для внутрисхемного программирования микроконтроллеров, и разъем для этой цели на плате, как правило, уже установлен, то подключение к нему модуля индикации напрашивается само собой. Соответствие сигналов порта SPI линиям управления модулем индикации иллюстрирует схема на рис.9. По окончании последовательной загрузки информационных бит в модуль индикации микроконтроллер "защелкивает" их, подавая на вход модуля индикации RCK импульс с какого-либо своего выхода, условно обозначенного на схеме как P1. Вход модуля OE можно использовать для гашения индикатора на время стартовой неопределенности выполняемой микроконтроллером программы. Если же подать на этот вход импульсный сигнал, то изменением скважности такого сигнала можно регулировать яркость свечения индикатора.

Подключение семисегментного светодиодного индикатора к порту SPI микроконтроллера

Рис.9. Подключение модуля индикации (слева) к порту SPI микроконтроллера (справа).

Учитывая особенности работы микросхемы SN74HC595D соответственно следует программно установить и режим порта SPI, а именно:

  • режим "Master/Slave" ("Ведущий/Ведомый") — "Master" ("Ведущий");
  • загрузка очередного бита информации — по перепаду сигнала SCK из лог. "0" в лог. "1".

Наименование сегментов семисегментного светодиодного индикатора

Рис.10. Сегменты.

Таблица 3. Знакогенератор.

Цифра Тип индикатора
С общим анодом С общим катодом
0 0x21 0xDE
1 0xEB 0x14
2 0x32 0xCD
3 0x62 0x9D
4 0xE8 0x17
5 0x64 0x9B
6 0x24 0xDB
7 0xE3 0x1C
8 0x20 0xDF
9 0x60 0x9F

Соответствие сегментов индикатора обозначениям на схеме приведено на рис.10. Если последовательная загрузка очередного байта через порт SPI начинается со старшего бита, то соответствующие десятичным цифрам шестнадцатиричные коды для загрузки будут такими как в таблице 3. Для включения десятичной точки (сегмент DP) перед загрузкой байта с ним следует выполнить логическую операцию "ИЛИ" с шестнадцатиричным числом 0x20 для индикатора с общим катодом или логическую операцию "И" с шестнадцатиричным числом 0xDF для индикатора с общим анодом.

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

На рис.11 приведена трассировка печатной платы для 8-разрядного светодиодного семисегментного модуля индикации по такой же схеме. Легко заметить "регулярность" рисунка печатной платы, аппликацией фрагментов которого можно создать рисунок для модуля индикации требуемой разрядности уже под свои нужды.

Печатная плата 8-разрядного семисегментного светодиодного индикатора

Рис.11. Печатная плата 8-разрядного светодиодного модуля индикации (масштаб 1:1).

Похожим образом можно создавать модули со светодиодными индикаторами большего размера, требующими как более высокого тока одного сегмента, так и напряжения на нем. Для этой цели можно взять, например, такую микросхему как TPIC6595 производства фирмы Texas Instruments. Работает она так же, как SN74HC595D, но ее выходы на основе мощных полевых транзисторов с открытым стоком имеют нагрузочную способность 250 мА при максимально допустимом напряжении 45 В.

Микросхему SN74HC595D можно заменить аналогичной других производителей, например 74HC595D производства ON Semiconductor или NXP Semiconductor (бывшая Philips Semiconductor). Эта микросхема вполне доступна и стоит недорого. Цифровые семисегментные светодиодные индикаторы SA05-11 или SC05-11 можно также заменить на аналогичные других производителей. Вполне подойдут, например, индикаторы BS-A532RI, BS-C532RI или другие серии BS-x53xRx производства фирмы Bright LED Electronics Corp. Применить можно и другие индикаторы, но это, естественно, повлечет за собой разработку новой печатной платы, что, впрочем, вполне по силам большинству инженеров и радиолюбителей.

©Журнал "Радиомир" №4 за 2008 год.

©Задорожный Сергей Михайлович, 2008г., г.Киев.

Литература:

  1. Описание микросхемы SN74HC595D производства Texas Instruments: http://focus.ti.com/lit/ds/symlink/sn74hc595.pdf.
  2. Описание микросхемы TPIC6595N производства Texas Instruments: http://focus.ti.com/lit/ds/symlink/tpic6595.pdf.
  3. Интернет-сайт фирмы Atmel: http://www.atmel.com.
  4. Интернет-сайт фирмы Kingbright: http://www.kingbright.com.