Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Подключение клавиатуры и устройств индикации к микро-ЭВМ




 

Клавиатура компьютера представляет собой набор механических контактов (открытых или герконовых), контактов на основе токопроводящей резины, емкостных датчиков или датчиков на основе эффекта Холла. Состояние кнопки фиксируется в триггере, выход которого присоединяется к одной из линий шины данных микропроцессора. На рисунке 4.13,а показана схема подключения контакта к шине микропроцессора. Из схемы видно, что в отпущенном состоянии на входе D–триггера присутствует уровень логической 1 и триггер принимает состояние «1». При нажатии кнопки триггер принимает нулевое состоянии. Недостатком такой схемы является наличие эффекта «дребезга» контакта за счет того, что в момент нажатия ключа подвижный пружинистый контакт несколько раз отскакивает от неподвижного, прежде чем установиться в устойчивое состояние. В результате «дребезга» наблюдается расщепление единичного потенциала в момент смены состояния и возможно неверное фиксирование состояния кнопки. Дребезг контакта может быть устранен программно путем считывания состояния триггера с некоторой задержкой после замыкания контакта. На рисунке 4.13 б) показана схема бездребезгового формирования состояния кнопки клавиатуры.

а) б)
Рисунок 4.13 - Схемы подключения контакта клавиатуры к МП  

Если клавиатура имеет N контактов, то для фиксации ее состояния требуется N триггеров или N/8 регистров. Организация клавиатуры, при которой на каждый контакт требуется свой входной триггер, носит название «линейного» подключения. Более экономной, с точки зрения затрат клавиатурных регистров, является матричная организация клавиатуры, которая применяется практически во всех типах клавиатур. При этом контакты клавиатуры располагаются в узлах матрицы размером n´m, где n,m – соответственно количество строк и столбцов. Схема подключения клавиатуры в виде матрицы показана на рисунке 4.14.

В качестве устройств вывода Увыв и ввода Увв используются регистры, выполненные на D–триггерах. Если выходные шины Увыв имеют нулевой потенциал, то схема подключения контакта кнопки ничем не отличается от рисунка 4.13а. При разомкнутых контактах клавиатуры триггеры регистра Увв находятся в состоянии «1». При замыкании одного из контактов он соединяет вход одного из соответствующего триггера УВв с нулевым потенциалом и тот переходит в нулевое состояние.

Во всех случаях при организации ввода информации с клавиатуры в ЭВМ решается ряд задач к которым можно отнести:

1) определение факта нажатия клавиши на клавиатуре;

2) определение номера нажатой клавиши;

3) осуществляется передачу управления на соответствующую программу.

Определение факта нажатия клавиши может быть осуществлено с помощью последовательных операций.

1. Записать нули в разрядные ячейки выходного устройства.

2. Считать содержание разрядов входного устройства.

3. Повторять слова, если во всех разрядах УВВ записаны единицы.

Вариант программы определения факта нажатия на одну из клавиш имеет вид:

 

Адрес Машинный код Метка Мнемокод Комментарий
  3E F8 M1 MVI A, 11111000 Занести 0 в младшие три разряда аккумулятора
  D3 KBDOT   OUT KBDOT Записать 0 в выходное устройство с адресом KBDOT
  DB KBDIN   IN KBDIN Получить число со входного устройства с адресом KBDIN
  E6 07   ANI 00000111 Очистить старшие пять разрядов аккумулятора
  FE 07   CPI 00000111 Проверить, есть ли в младших трех разрядах аккумулятора 0
080А CA 0008   JZ M1 Если нет, то идти на М1  
080В C3 0D08 DONE JMP DONE Конец  

Для определения номера нажатой клавиши необходимо нулевой потенциал подать только на одну из горизонтальных линий матрицы (путем записи единицы в соответствующий триггер Увыв), а на остальных должна быть «1» и определять ячейку регистра УВв, которая приняла состояние «1». Затем по очереди перемещать «0» в Увыв (сканировать УВыв) и определять разряд Увв с нулевым значением.

 

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...