Студопедия — Интерфейс клавиатуры.
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Интерфейс клавиатуры.






Подключение клавиатуры к системной плате осуществляется последовательным синхронным интерфейсом, состоящим из двух обязательных сигналов: КВ – Data и КВ – Cloсk. Контроллер интерфейса клавиатуры и его разъем расположены на системной плате. Разъем клавиатуры может быть двух типов:

- обычная 5 контактная розетка DIN, рис. 2.2;

- малогабаритная розетка mini-DIN, рис 2.3.

3 1 5

Ключи 6

5 4 4 3

2 2 1

Рис.2.2. Рис2.3.

Обозначение клемм на схемах:

Рис2.2. 1 – KB Clock; 2 – KB Data; 3 - КВ – Reset #;

4 – GND (общий – заземление);5 - +5В.

Рис.2.3. 1 - KB Data; 2 – пустой; 3 - GND (общий – заземление);

4 - +5В; 5 - KB Clock; 6 – Ключ.

Процессор общается с клавиатурой через контроллер интерфейса клавиатуры, используя порт 60h. Прием скан кодов осуществляется чтением этого порта. О необходимости чтения скан-кода контроллер сигнализирует процессору через аппаратное прерывание, сигнал которого вырабатывается по каждому срабатыванию клавиши. Кроме того, этот же контроллер транслирует команды, посылаемые к клавиатуре.

С использованием шины USB появились клавиатуры с контроллером 8042. они имеют и встроенный ХАБ для подключения мыши через USB. При этом со стороны BIOS для такой клавиатуры требуется специальная поддержка.

2.1. Контроллер интерфейса клавиатуры и мыши 8042/8242.

Программируемый микроконтроллер последовательных интерфейсов клавиатуры и мыши расположен в пространстве ввода-вывода CPU по адресам 060 RW и 064 RW через параллельный интерфейс, рис 2.4.

 
 


CPU

 

 


060 RW 064 RW

Рег.данных Рег. состояния Команды

и команд

 

контроллер

клавиатуры

       
   
 
 


Интерфейс Интерфейс

Мышь

Клавиатура р1 р2

       
   


Рис. 2.4. Структурная схема взаимосвязи контроллера

клавиатуры и мыши

Режим работы контроллера (разрешение работы клавиатуры и мыши, прерывания от них, трансляция скан-кодов и др.) задается командным байтом, посылаемым в контроллер по специальной команде и регистра команд. Контроллер имеет 2 внешних порта по которым реализует последовательные интерфейсы связи со всеми устройствами.

Регистр состояния порта 064 R

Биты регистра 064 R
               
Полнота выходного буфера 1 - буфер полный (OBF) Наполнение входного регистра: 1 –полный 0 –готов к приему Системный флаг 0 - по вкл питания 1 - состояние сброса Признак записи 1- команда 0 - данные Замок клавиатуры 0 – замок вкл 1 - откл Выходной буфер мыши Mouse_OBF Общий перерыв Ошибка четности при последнем обмене с клавиатурой
 

2.2. Алгоритм работы контроллера с клавиатурой:

 

3. Скан – коды и системная поддержка.

 

З.1. Скан – коды

Скан –коды передаются от клавиатуры в компьютер по фактам нажатия и отпускания клавиш.

При нажатии к5лавиши передается ее скан-код, соответствующий номеру расположения клавиши на клавиатуре. Некоторые клавиши передают цепочку кодов, начинающихся с префикса Е0 или Е1, за которыми следуют байты расширенного кода.

Набор Set#1. Свойственны первым клавиатурам. При отпускании клавиша клавиатуры передает скан-код с инвертируемым битом 7. При этом префиксы передаются без изменений, а модифицированные расширенные скан-коды передаются в порядке обратном прядку передачи при нажатии. Принятый способ сигнализации отпускания не позволяет использовать скан-коды: 60h, 61h, 5A, 6E и больше 79h и 00.

 

Набор Set#2. Соответствует клавиатурам со 101/102 и более клавиш.

При отпускании передаются два байта:

Признак отпускания F0 Не модифицированный скан-код
1-й байт 2-й байт

Клавиши, генерирующие пару кодов (префикс и расширенный код) при отпускании передается следующим образом:

Префикс Е0 (Е1) признак F0 расширенный скан-код
Если клавиша генерирует пару кодов при нажатии, то при отпускании каждая пара кодов дает тройку кодов с обратным порядком их следования.

Набор Set#3. Существует но практически не используется.

Номер набора клавиатуре и ее контроллеру задается центральным процессором по команде F0. При включении питания у современных клавиатур устанавливается набор 0. Контроллер клавиатуры осуществляет трансляцию принимаемых кодов наборов Set#1 или Set#2 в набор Set#0, коды которого доступны процессору при чтении из порта 60h. Считыванием из порта и интерпретацией скан-кодов занимается программа центрального процессора, выполняемая обработчиком прерываний IRQ.

Автоповтор. При удержанной нажатой клавише котроллер клавиатуры выдает скан-код и далее через некоторое время контроллер клавиатуры генерирует серию посылок скан-кода, которые будут вызывать серию прерываний у процессора IRQ1 с передачей этого кода до тех пор, пока клавиша не будет отпущена. Если не отпуская этой клавиши, нажать другую, то будет передан скан код второй клавиши и при ее удержании автоповтор начнется для нее, т.е. автоповтором пе6редаются только последние байты из этих цепочек.

 

3.2. Системная поддержка.

Системная поддержка клавиатуры осуществляется на уровне BIOS. Коды, принятые от клавиатуры, считываются и обрабатываются обработчиком аппаратного прерывания IRQ1. Результат обработки помещается в клавиатурный буфер, из которого по программному прерыванию Int 16h этот результат может быть извлечен позже.

Начальное тестирование клавиатуры осуществляется процедурой POST, которая запускает диагностический тест. При обнаружении ошибки выдается сообщение с указанием скан-кода клавиши и для продолжения рекомендуют нажать клавишу F1, чтобы начальная загрузка не останавливалась по ошибке клавиатуры.

Русификация клавиатуры поддерживается на программном уровне с помощью загружаемого драйвера, который замещает обработчик IRQ1 драйвера BIOS, перехватывая вектор прерывания процессора Int 9h

Прерывания, вызванные приходом кодов нажатия и отпускания клавиш обрабатывает BIOS Int 9h.

 

Алгоритм обработки клавиш следующий:

       
   


Нажатие (отпускание) клавиши Специальные клавиши

       
   

 


Определение состояния флагов Модификация флагов

клавиатуры

 
 

 


Результат обработки в ОЗУ

 

 
 


Клавиатурный буфер

 

(Кольцо на 16 слов)

 

 
 

 

 


Буфер полный

Звуковой сигнал

Записи слова нет

 

Интерфейс прикладного уровня представляет BIOS Int 16h, основное назначение которого – извлечение слов из клавиатурного буфера

Функция задается в регистре АН при вызове.

Результата помещается в регистр АХ.







Дата добавления: 2015-08-17; просмотров: 528. Нарушение авторских прав; Мы поможем в написании вашей работы!



Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Дренирование желчных протоков Показаниями к дренированию желчных протоков являются декомпрессия на фоне внутрипротоковой гипертензии, интраоперационная холангиография, контроль за динамикой восстановления пассажа желчи в 12-перстную кишку...

Деятельность сестер милосердия общин Красного Креста ярко проявилась в период Тритоны – интервалы, в которых содержится три тона. К тритонам относятся увеличенная кварта (ув.4) и уменьшенная квинта (ум.5). Их можно построить на ступенях натурального и гармонического мажора и минора.  ...

Понятие о синдроме нарушения бронхиальной проходимости и его клинические проявления Синдром нарушения бронхиальной проходимости (бронхообструктивный синдром) – это патологическое состояние...

Ученые, внесшие большой вклад в развитие науки биологии Краткая история развития биологии. Чарльз Дарвин (1809 -1882)- основной труд « О происхождении видов путем естественного отбора или Сохранение благоприятствующих пород в борьбе за жизнь»...

Этапы трансляции и их характеристика Трансляция (от лат. translatio — перевод) — процесс синтеза белка из аминокислот на матрице информационной (матричной) РНК (иРНК...

Условия, необходимые для появления жизни История жизни и история Земли неотделимы друг от друга, так как именно в процессах развития нашей планеты как космического тела закладывались определенные физические и химические условия, необходимые для появления и развития жизни...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия