На рис. 2.3.3 приведен пример использования схемы для подключения клавиатуры в виде матрицы клавиш 8X8 и 8-разрядного дисплея, построенного на восьмисегментных светодиодных индикаторах.
Канал С схемы применяется для сканирования дисплея и клавиатуры, канал В — для записи восьмисегментного кода очередного отображаемого разряда дисплея, канал А — для чтения кода нажатой клавиши с матрицы клавиатуры.
Дешифрование и сканирование клавиатуры и дисплея осуществляются программно.
Организация прерываний микроЭВМ при работе с внешними устройствами. Внешние устройства могут выдавать сигнал на обслуживание прерывания в любой момент времени как путем подачи уровня «1» на вход 3. Пр МП БИС, так и с помощью установки флага в одном из разрядов слова состояния ВУ (считываемый тип прерывания). При работе по считываемому типу прерывания микроЭВМ в процессе выполнения программы обращается к ВУ и определяет установку флага в разряде его слова состояния и при подтверждении его установки организует выполнение соответствующей подпрограммы обслуживания прерывания.
Таким образом, подключение ВУ при работе по считываемому типу прерываний ничем не отличается от подключения входного устройства к микроЭВМ.
Рисунок 2.3.3 – Использование микросхемы КР580ВВ55 для подключения клавиатуры и дисплея
При запросе прерывания подачей сигнала на вход З.Пр МП БИС подтверждение его восприятия и начало его обслуживания указываются сигналом ОБ. Пр на МУ микроЭВМ.
В начале обслуживания прерывания микроЭВМ переходит к циклу извлечения
кода команды.
Команда, передаваемая по прерыванию, должна быть такой, чтобы в результате ее выполнения микроЭВМ сохраняла содержание программного счетчика в стеке, а затем обращалась к подпрограмме обслуживания прерывания.
По выполнению подпрограммы обслуживания прерывания команда RET позволяет возвратить сохраненное значение PC из стека и продолжить выполнение текущей программы.
В наборе команд МП БИС КР580ИК80 имеется лишь одна команда CALL, позволяющая осуществить описанную последовательность операций.
Существуют два типа команды CALL: RESTART (RST<N>) и CALL<A1> <A2>.
Команда RST<N> является однобайтной, позволяющей передавать управление на один из фиксированных адресов памяти.
Команда CALL<А1><А2> является трехбайтной, где первый байт содержит код команды CALL — CD16, а второй и третий — информацию об адресе передачи управления.
Внешние устройства в ответ на начало обслуживания прерывания (сигнал ОБ. Пр) могут сообщать микроЭВМ либо команду RST<N>, либо команду CALL< А1 > < А2> .
Для сообщения команды RST<N> может использоваться блок приоритетного прерывания К589ИК14 Д1 совместно со схемой К589ИР12 ДЗ (рис. 2.3.4). На схеме Д2—К155ЛН1.
При сообщении команды CALL<A1> <A2> ВУ должно обеспечивать:
1. В ответ на получение сигнала ОБ. Пр сообщить на МД микроЭВМ код команды CALL—CD16.
2. Исключить обращение МП БИС к памяти на двух последующих циклах сообщения кода адреса <А1><А2>
Обычно в микроЭВМ включают дополнительную микросхему системного контроллера КР580ВН28, позволяющего на МУ микроЭВМ сформировать два дополнительных сигнала ОБ. Пр в ответ на поступление кода команды CALL по МД. Этот принцип применяется при подключении к микроЭВМ программируемого блока приоритетного прерывания КР580ИК59.
Рисунок 2.3.4 – Схема подключения БПП к микроЭВМ с использованием МБР
|