Для отображения цифровой и буквенной информации в МКС широко используются семисегментные индикаторы, которые бывают светодиодные, вакумно-люминесцентные, жидкокристаллические, вакуумно-накаливаемые, газоразрядные. Наибольшее распространение получили семисегментные светодиодные индикаторы (ССДИ) ввиду большой яркости, малым габаритам, способности работать в широком диапазоне температур, механической прочности. На рис.7.23,а показано расположение и обозначение сегментов ССДИ. Семь отображающих элементов позволяют высвечивать десятичные и шестнадцатиричные цифры, некоторые буквы латинского и русского алфавитов, а также некоторые специальные знаки. При формировании, например, цифры 3 будут подсвечиваться сегменты a, b, c, d и g, а сегменты e и f останутся темными. При формировании буквы F будут подсвечиваться сегменты a, e, f и g, а темными останутся сегменты b, c и d.
По способу соединения отдельных светодиодов в ССДИ различают индикаторы с общими катодами (ОК) и с общими анодами (ОА). Их схемы внутренних соединений показаны на рис. 7.23,б,в. На рис. 7.23,г приведено условное графическое отображение ССДИ.
Для засветки одного сегмента большинства типов ССДИ необходимо обеспечить протекание через сегмент тока 10-15 мА при напряжении 2,0-2,5 В. Низкая нагрузочная способность портов MCS-51 не допускает прямого соединения с ССДИ. Для усиления тока применяют буферные элементы – инверторы или повторители с открытым коллектором серии К155 или специальные микросхемы преобразователей кодов для ССДИ.
Рис. 7.23. Семисегментный светодиодный индикатор: а) - условное обозначение сегментов; б) – индикатор с общими катодами (ОК); в) – индикатор с общими анодами (ОА); г) - условное графическое обозначение на схемах
При формировании символов в ССДИ требуются специальные семисегментные коды, которые отличаются от обычных позиционных двоичных кодов, используемых в МК. Для получения семисегментных кодов могут быть применены два метода:
1) аппаратурный;
2) программный.
Аппаратурный метод основан на использовании специальных микросхем преобразователей кодов, которые преобразуют двоичный позиционный код в семисегментный. В качестве таких преобразователей наиболее широко применяются микросхемы К514ИД1 и К514ИД2, которые обычно называют дешифраторами кода. Микросхема К514ИД1 используется для индикаторов с ОК, а К514ИД2 – для индикаторов с ОА. Недостатком этих дешифраторов является то, что они позволяют получить только семисегментные коды десятичных цифр от 0 до 9. При этом на их входы должен подаваться двоично-десятичный код.
Программный метод получения семисегментного кода основан на том, что каждому сегменту индикатора поставлен в соответствие определенный бит D7, D6,…, D0 байта. Принято, что если этот бит равен 1, то сегмент светится. Определенные комбинации единичных значений битов формируют на индикаторе отображаемый символ, как это приведено в табл. 7.3.
Таблица 7.3
Семисегментные коды для отображения символов от 0 до F
Семисегментный код ОтобраБит данных – сегмент жаемый символ
D7 - h |
D6 –g |
D5 –f |
D4 –e |
D3 –d |
D2 – c |
D1 -b |
D0 -a |
HEX |
|
0 0 0 … 0 |
0 0 1 … 1 |
1 0 0 … 1 |
1 0 1 … 1 |
1 0 1 … 0 |
1 1 0 … 0 |
1 1 1 … 0 |
1 0 1 … 1 |
3F 06 5B … 71 |
0 1 2 … F |
Таблица семисегментных кодов обычно хранится в памяти программ. Прочитать эти коды можно с помощью подпрограммы перекодировки, которую можно назвать CROSSCODE.
Текст подпрограммы следующий:
; CROSSCODE – подпрограмма получения семисегментного
; кода
; Входной параметр: регистр А – двоичный код символа
; Выходной параметр: регистр А – семисегментный код символа
CROSSCODE: MOV DPTR,#TABLE ; Загрузить в DPTR
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.