Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Динамический вывод информации на дисплей из семисегментных индикаторов




При использовании внешних схем преобразователей кодов процедура индикации одного символа на ССИ в статическом режиме сводится к выдаче двоичного кода символа в соответствующий порт вывода МК (рисунок 4.17).

Процедура вывода данных на линейный дисплей из СИИ включает следующие шаги.

1. Отключение всех индикаторов. В приведённой схеме (см. рисунок 4.17) этот шаг предполагает подачу на входы ОК всех индикаторов логических единиц.

2. Установка кода на информационных входах, предназначенного для отображения на одном из индикаторов.

3. Включение индикатора, на котором необходимо отобразить этот код. В привёденной схеме (см. рисунок 4.17) включение индикатора осуществляется подачей логического нуля на его вход ОК.

4. Организация временной задержки.

5. Выключение индикатора.

6. Переход на шаг 2 (вывод информации на следующий индикатор), и т.д.

 

 

Рисунок 4.17 – Линейный дисплей на ССИ с динамическим отображением информации

 

Пример программной реализации данной процедуры приведен в листинге 4.22.

 

Листинг 4.22 – Программа вывода информации на четырёхразрядный дисплей, приведенный на схеме, представленной на рисунке 4.17

; Программа реализует подсчет импульсов, подаваемых на разряд 0

; порта P0. Количество импульсов выводится на дисплей в

; десятичном виде. Индикатор HL1 используется для вывода младшего

; разряда десятичного числа, индикатор HL4 – для старшего

; Сегменты H (точки) всех индикаторов выключены

  BEGIN:   NEXT:   TIMER:   I0:     I1:     I2:     I3: .ORG 0000H JMP BEGIN   .ORG 000BH   JMP TIMER   MOV IE, #00H MOV TMOD, #02H   MOV TL0, #7FH MOV TH0, #7FH MOV DPTR, #0000H MOV P1, #00H MOV P3, #10101010B MOV R0, #FFH     SETB TR0 MOV IE, #82H   SETB P0.0   JB P0.0, $ JNB P0.0, $   CLR EA   MOV A, DPL ADD A, #01H PUSH PSW DA A MOV DPL, A POP PSW   MOV A, DPH ADDC A, #00H DA A MOV DPH, A SETB EA   JMP NEXT     INC R0     CJNE R0, #00H, I1 MOV P3, #10101010B   MOV P1, DPL MOV P3, #10101000B   RETI CJNE R0, #01H, I2 MOV P3, #10101010B   MOV A, DPL SWAP A MOV P1, A MOV P3, #10100010B   RETI CJNE R0, #02H, I3 MOV P3, #10101010 B   MOV P1, DPH MOV P3, #10001010 B   RETI MOV P3, #10101010 B   MOV A, DPH SWAP A MOV P1, A MOV P3, #00101010B   MOV R0, #FFH RETI ; Адрес начала программы ; Переход к основной ; программе ; Адрес обработчика ; прерываний от таймера ; Переход к процедуре ; обработки прерывания ; Запрет всех прерываний ; Настройка таймера на ; режим с автопрезагрузкой ; Загрузка регистров таймера ; Обнуление регистра DPTR ; ; Отключение индикаторов ; Загрузка регистра, ; отвечающего за выбор ; индикатора ; Разрешение счёта ; Разрешение прерываний от ; счётчика ; Настройка разряда порта на ; ввод ; Ожидание импульса ; ; Запрет всех прерываний ; Инкрементирование ; регистра DPL с десятичной ; коррекцией результата ; ; ; ; ; Инкрементирование ; регистра DPH с десятичной ; коррекцией результата; ; ; Разрешение прерываний от ; таймера ; Переход к следующему ; опросу P0.0 ; Инкрементирование регистра, ; отвечающего за выбор ; индикатора ; Отключение всех ; индикаторов ; Вывод кода (единицы) ; Включение индикатора ; HL1 ; Выход из прерывания ; Отключение всех ; индикаторов ; ; Вывод кода (десятки) ; ; Включение индикатора ; HL2 ; Выход из прерывания; ; Отключение всех ; индикаторов ; Вывод кода (сотни) ; Включение индикатора ; HL3 ; Выход из прерывания; ; Отключение всех ; индикаторов ; Вывод кода (тысячи) ; Включение индикатора ; HL4 ; Выход из прерывания;

Контрольные вопросы

1 Чем отличается статический сигнал от импульсного?

2 Что такое «меандр»?

3 Какие основные средства отображения информации применяются в микроконтроллерных устройствах?

4 Разработайте алгоритм динамического вывода информации на матричный дисплей.

5 Разработайте алгоритм вывода информации на семисегментный дисплей.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных