Kомпоненты, приборы, оборудование      
 |  Главная |  Каталог предприятий Украины |  Схемотехника |
 

Раздел на реконструкции, некоторые ссылки могут не работать!
  • Аудио
  • Безопасность
  • Бытовая электроника
  • Видео
  • Видеокамеры
  • Высоковольтные
  • Генераторы
  • Измерения
  • Интерфейсы
  • Коммутация
  • Компьютер
  • Медицина
  • Моделирование
  • Передатчики
  • Питание
  • Обработка данных
  • Предусилители
  • Радио

  • Веб-мастерам
    и писателям:
    Биржа статей. Продать - купить статью. Уникальные статьи: готовые и на заказ.


    Назад
       Проектирование микропроцессорных устройств. Часть 5
       
       А. Александров, г. Киев
       Статическое управление светодиодами и индикаторами Для индикации работы небольших систем с использованием микроконтроллеров наиболее часто применяют семисегментные индикаторы или единичные светодиоды, позволяющие оперативно контролировать работу устройства. Яркость свечения светодиодов и индикаторов прямо пропорционально зависит от величины тока, протекаемого через светоизлучающий элемент. Поэтому при проектировании микропроцессорных устройств нужно соизмерить величину потребляемого индикатором тока с максимально возможным выходным током линий портов микропроцессора. Если нагрузочного тока микропроцессора будет недостаточно, то стоит применить дополнительные каскады (например, на транзисторах или других интегральных элементах) для получения требуемого тока в нагрузке. Следует заметить, что в большинстве микроконтроллеров непосредственное подключение светодиода (вместе с резистором, ограничивающим ток, протекающий через светодиод) возможно лишь в конфигурации, показанной на рис.15а, в которой ток протекает от "+" источника питания через светодиод на вывод линии порта микропроцессора. В этом случае светодиод будет светиться при наличии низкого логического уровня на выводе микропроцессора. Величину сопротивления ограничительного резистора определяют по формуле: Rогр = (5 - 0,5 - U)/I , где U - прямое падение напряжения на светодиоде (зависит от цвета светодиода), I - прямой ток светодиода (его максимальное значение не должно превышать 20 мА). Построение схемы, в которой светодиод был бы включен между линией порта и землей, будет неправильным: светодиод не будет светиться или же будет светиться очень слабо, когда вывод линии порта микропроцессора находится в высоком логическом состоянии (рис.15б). Конечно, можно отказаться от использования внутреннего резистора линии порта микропроцессора (рис.16) и использовать дополнительный резистор (рис.15в). Но такое включение обычно не применяется из-за большого потребления тока (в те периоды времени, когда светодиод не светится, потребление тока намного больше, чем во время его свечения). На рис.17 показана схема с применением транзистора, которую можно использовать в случае недостаточной мощности линии порта микропроцессора для питания светодиода. На рис.18 показано применение интегрального драйвера ULN2803A для управления линейкой светодиодов. ULN2803A имеет достаточный запас по току для питания светодиодов и индикаторов. Описанные выше способы управления светодиодными индикаторами принадлежат к группе статических - включение или выключение свечения светодиода зависит только от состояния вывода микропроцессора. Такое управление легко обеспечивается на программном уровне. Достаточно лишь применить команды установки или обнуления линии порта микропроцессора (SETB P2.0, CLR P2.0), а в случае использования всего порта микропроцессора для управления светодиодами можно применить команду пересылки байта данных в порт, например, MOV P2, #0F0H. Мультиплексорное управление знаковыми индикаторами и светодиодами На рис.19 показана схема одного из возможных вариантов управления семисегментными знаковыми индикаторами. В устройстве применены индикаторы с общими анодами, соответствующие катоды которых подключены к линиям порта микропроцессора. Резисторы, ограничивающие ток, имеют меньшее значение сопротивления, чем в устройствах со статическим управлением светоиндикаторов в связи с необходимостью обеспечения более сильного тока (1/4 силы тока свечения дисплея) для получения желаемой яркости свечения. Таким образом, чем большее количество групп индикаторов подлежит управлению, тем меньшее значение сопротивления должны иметь резисторы. Но не стоит забывать о недопустимости превышения гранично-возможной величины тока линии порта. Аноды дисплеев подключены к положительному полюсу источника питания через ключевые транзисторы, управляемые микропроцессором. Устройство работает в соответствии со следующим алгоритмом (для одного дисплея): - установка линий порта Р1 в состояния, соответствующие отображаемой информации на дисплее VD1 (код, соответствующий виду светящегося знака); - включение дисплея VD1 (Р3.3 = 0); - ожидание времени, в процессе которого дисплей светится; - выключение дисплея VD1 (Р3.3 = 1). Вышеуказанные шаги нужно повторить еще три раза (для дисплеев VD2, VD3 и VD4) и затем начать цикл сначала (от дисплея VD1). Время длительности цикла должно быть подобрано таким образом, чтобы частота свечения на каждом дисплее была не меньше 30...40 Гц. Человеческий глаз не успевает реагировать на мерцание с такой частотой и воспринимает свечение как непрерывное. Естественно, что при разработке устройств с мультиплексорным управлением световыми индикаторами нужно стремиться повышать частоту мерцаний индикаторов до 100 Гц, как в телевизорах и мониторах, для снижения нагрузки на глаза оператора. Дальнейшее увеличение частоты мерцания свечения не увеличивает качества отображаемой информации, но приводит к увеличению количества радиоэлектронных помех, генерированных дисплеем, и увеличивает расход энергии микропроцессором. Следует заметить, что в таком устройстве легко управлять яркостью свечения дисплея: стоит подобрать соответствующее время длительности свечения данного дисплея - чем больше времени, тем ярче свечение. Конструкторы, имеющие опыт работы с устройствами, выполненными, например, по технологии ТТЛ, заметят отсутствие микросхемы декодера между выводами микропроцессора и дисплеем. В отличие от схем, построенных по правилам классической цифровой схемотехники, операцию декодирования информации здесь выполняет микропроцессор, позволяя максимально упростить схему устройства и значительно увеличить количество индикаторов. На листинге 4 показан пример программы, которая управляет работой 4-цифрового дисплея (см. рис.19). Процедуру, реализующую задержку, показано на листинге 5. Она позволяет обеспечить обновление знакового индикатора с частотой около 480 Гц для микропроцессорного устройства с тактовой частотой 12 МГц. На первый взгляд может показаться, что частота значительно превышает оптимальную, однако стоит учесть тот факт, что кроме обслуживания знаковых индикаторов в главном цикле программы будут выполняться также и другие задания, нагружающие микропроцессор, приводящие к понижению частоты мерцания свечения знаковых индикаторов. В зависимости от конфигурации программы следует подбирать величину задержки для получения оптимальных параметров свечения (обновления) дисплея. Хорошим способом также можно считать размещение кода обслуживания свечения в подпрограмме обслуживания тактового прерывания (см. листинг 6). Эта подпрограмма обеспечивает для тактовой частоты 12 МГц обновление знакового индикатора с частотой около 60 Гц, которая не зависит от работы главной программы, что позволяет ее точное определение. В обоих случаях предполагается, что данные, предназначенные для индикации, уже подготовлены с помощью другой программы. Теперь ничто не мешает высветить на знаковом индикаторе произвольное количество сегментов (обычно требуется, чтобы семисегментный индикатор высвечивал цифру). Соответствующее программирование показано на листинге 7. Представленная программа использует таблицу, в которой записано состояние последовательных выводов порта Р1, необходимых для получения на семисегментном индикаторе соответствующих цифр. Данные числовые значения соответствуют ситуации, в которой выводы сегментов индикатора (a, b, c, d и т.д.) подключены поочередно к линиям порта от Р1.0 до Р1.6. Вывод точки знакового индикатора (обозначен как h или dp) подключается к линии Р1.7. Способ создания светящихся знаков на семисегментном индикаторе показан на рис.20. Кодирование состоит в помещении в таблицу нуля в случае высвечивания сегмента и единицы в противном случае. Полученный таким способом ряд нулей и единиц представляет собой восьмибитовое двоичное число, у которого самый младший бит соответствует выводу Р1.0. Преобразование в шестнадцатиричную форму, сокращающая и упрощающая читабельность записи, является формальностью. Так, полученное число нужно вписать в соответствующую позицию в таблице кодов размещенную в программе. Кроме цифр на знаковом семисегментном индикаторе можно получить высвечивание некоторых литер алфавита и множество условных знаков - в зависимости от потребности. В ситуации, когда нет возможности использовать достаточное количество портов микропроцессора для управления светодиодными индикаторами (например, при недостаточном количестве свободных линий портов или слишком большой нагрузке), можно воспользоваться распространенным способом с применением последовательно-параллельного регистра. На рис.21 показана схема микропроцессорного устройства с мультиплексорным управлением светодиодным индикатором на последовательно-параллельном регистре 74164, который совместно с двумя транзисторами управляет индикаторной линейкой, построенной на светодиодах. Несомненным преимуществом данной схемы является возможность управления шестнадцатью светодиодами с помощью 4 линий микропроцессора. Используя последовательное подключение нескольких регистров 74164, можно поочередно управлять группами из 16 светодиодов (приходящихся на каждый регистр) без использования дополнительных выводов микропроцессора. Общий принцип программирования не изменяется (по-прежнему применяется мультиплексорная индикация), только несколько иначе протекает процедура выработки сигналов, соответствующих включению или выключению выбранного светодиода. Вместо выполнения единичной команды MOV нужна последовательность пересылок (считаем, что после включения питания линия порта Р1 находится в высоком логическом состоянии). На листинге 8 показана программа, демонстрирующая метод записи кодов в регистры 74164, соответствующих форме высвечиваемых знаков. (Продолжение следует)


     SVITEL © 2014  Мир электроники.  Admin  При перепечатке и цитировании активная гиперссылка на сайт обязательна. Rambler's Top100