21732

Клавиатура. Манипуляторы-указатели

Лекция

Коммуникация, связь, радиоэлектроника и цифровые приборы

Вопросы: Общая характеристика клавиатуры. Интерфейс клавиатуры и мыши.Общая характеристика клавиатуры. Емкостные датчики и датчики Холла не имеют подвижных контактов и являются наиболее надежными для клавиатуры.

Русский

2013-08-03

103 KB

13 чел.

Лекция 2. Клавиатура. Манипуляторы-указатели.

Вопросы:

  1.  Общая характеристика клавиатуры.
  2.  Интерфейс клавиатуры и мыши.
  3.  Скан-коды и системная поддержка.
  4.  Манипуляторы-указатели

Литература: [1.] с. 546-562

1.Общая характеристика клавиатуры.

 

 Клавиатура РС представляет собой унифицированное устройство со стандартным разъемом и последовательным интерфейсом связи с системной платой.

Датчики клавиш представляют собой механические контакты (открытые или  герметичные в стеклянных колбах магнитоуправляемые – герконы) или кнопки на основе токопроводящей резины, или емкостные датчики или датчики Холла. Емкостные датчики и датчики Холла не имеют подвижных контактов и являются наиболее надежными для клавиатуры. Независимо от типа применяемых датчиков, все  клавиши объединены в матрицу, рис.2.1.

1      2    3   4   5  6    7   8   9   10  ………

2     А

3

4                                                 С

5                       В

6

7

  Рис. 2.1. Матрица клавиатуры

Место расположение букв А, В, С на данной матрице может быть описано  соответствующим кодом (скан-код):

А – 23d ; В – 55d; С – 410d

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

при нажатии передается ее скан-код, т.е. номер идентифицирующий ее расположение на клавиатуре, после ее отпускания  передаются 2 байта:

1-й байт – содержит признак отпускания – F0;

2-й байт – не модифицированный скан – код.

   1-й байт (F0)   2-й байт

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

 Е0 (Е1)       F0         расширенный код

Типовая клавиатура имеет внутренний контроллер, выполненный на микросхеме из семейства MCS – 48 фирмы  Intel, осуществляющий контроль клавиш матрицы и управление индикаторами, внутреннюю диагностику и связь с системной платой последовательным интерфейсом по линиям КВ – Data и КВ – Cloсk.

В стандартном исполнении существуют 3 типа клавиатур:

-клавиатура ХТ – 83 клавиши без индикаторов, добавленных на более поздних разработках (Num Lock, Caps Lock);

- клавиатура АТ – 84 клавиши , отличающаяся появлением дополнительной клавиши SysRec и индикаторов Num Lock, Caps Lock, Scroll Lock, а также двунаправленным интерфейсом с системной платой, обеспечивающий программирование параметров клавиатуры и ее диагностику;

- расширенная клавиатура – 101/102 клавиши, используемая для моделей АТ и PS/2 и являющаяся современным стандартом. Другие расширенные клавиатуры могут иметь 104, 105 или 122 клавиши.

Расширенная клавиатура имеет следующие группы клавиш:

- основной клавиатуры;

- цифровые клавиши;

- функциональные клавиши;

- клавиши управления курсором и экраном;

- клавиши управления питанием;

- кнопки быстрого доступа к приложениям.

По электрическому интерфейсу Клавиатуры ХТ и АТ совпадают, а по логическому они не совместимы. Клавиатура PS/2 отличается от АТ только разъемом. В остальном - полное совпадение.  

Современные клавиатуры работают в одном из трех наборов (таблиц) скан-кодов:

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

Подключение клавиатуры к системной плате осуществляется последовательным синхронным интерфейсом, состоящим из двух обязательных сигналов: КВ – 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

0

1

2

3

4

5

6

7

Полнота  выходного буфера

1 - буфер полный (OBF)

Наполнение входного регистра :

1 –полный

0 –готов к приему

Системный флаг

0 - по вкл питания

1 -  состояние сброса

Признак записи

  1.  команда

0 - данные

Замок клавиатуры

0 – замок вкл

1 - откл

Выходной буфер мыши

Mouse_OBF

Общий перерыв

Ошибка четности при последнем обмене с клавиатурой

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

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

З.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редаются только последние байты из этих цепочек.

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

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

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

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

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

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

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

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

                      клавиатуры

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

                 

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

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

Буфер полный

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

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

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

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

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

4. Манипуляторы-указатели

Устройство ввода мышь передает информацию в систему о своем перемещении по плоскости нажатии кнопок (от двух до трех и более). Обычная конструкция имеет в своем составе шарик, передающих вращение на два координатных диска с фотоэлектрическими датчиками. Датчики для каждой координаты имеют две открытые оптопары (светодиод-фотодиод) в оптический канал которых входит вращающийся диск с прорезями.

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

3D – мышь . Кроме двух координат перемещения на плоскости позволяет задавать третью координату с дополнительного колесика, вращаемого пальцем.

Интерфейсы мыши. Различают несколько видов:

 Bus Mouse – использование специализированной платы адаптера.

 Serial Mouse – использует интерфейс RS 232C  и двух полярный сигнал с уровнями +3В и – 3В.

 PS/2- Mouse – использует однополярный сигнал с напряжением +5В

 USB Mouse – обычный последовательный интерфейс

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

4.1.  Bus Mouse это один из первых вариантов мыши. Эта мышь содержит только датчики и кнопки, а обработка их сигналов производится на специализированной плате адаптера. Для этой мыши используется 9 проводной кабель со специальным разъемом, внешне погожим на разъем мыши PS/2 Главный недостаток заключается в том, что адаптер занимает разъем системной шины, адреса ввода-вывода и прерывания.

  1.  Serial Mouse - мышь с последовательным интерфейсом, подключаемая через 9- или 25 контактный разъем СОМ-порта. Имеет встроенный контроллер, обрабатывающий сигналы координатных датчиков и кнопок. Каждое перемещении и нажатие кнопок кодируется двоичным сигналом по интерфейсу RS-232. Недостаток Serial Mouse является тол, что она занимает СОМ-порт и требует полного использования его штатной линии прерывания (IRQ4 для СОМ-1 и IRQ3 для СОМ-2).

Две основные разновидности мышей: MS Mouse и PC Mouse требуют различных драйверов и поэтому многие мыши имеют переключатель MS/PC.

MS Mouseхарактеризуется 7 битными данными в трехбайтном пакете. Положительное перемещение по координате Х вправо, а по координате У – вниз. Для трехкнопочной мыши добавляется четвертый байт.

PC Mouseхарактеризуется 8 битовыми данными при пяти байтовом пакете. Положительное перемещение по координате Х вправо, а по координате У – вверх.

  1.  PS/2- Mouse эта мышь появилась с компьютерами PS/2. Ее интерфейс и разъем аналогичен клавиатурному и реализуется тем же контроллером, что и клавиатуры. Отличие работы интерфейса мыши от клавиатуры заключается в том, что специальные команды каждого байта записываются в порт 64h, но перед записью каждого байта записывается код  D4 h. 

Мышь работает в трех режимах:

- токовом – посылает данные по любому изменению состояния;

- опросе – передает данные только по запросу процессора;

- диагностики – возврат эхом данных, посылаемым контроллером.

Мышь с этим интерфейсом имеет поддержку BIOS, обеспечивающую ее настройку. Драйвер мыши обеспечивает прерывания по вектору 74h  от запроса IRQ12.

PAGE  4


    
064 RW

Регистр команд

Команда

контроллеру

прием кода

Готов регистр?

Контроллер обработка команды

QBF=?

Да

Нет

Бит1=0

Бит1=1

О

Готов к приему

1

Не готов регистр полон

Запрос прерывания клавиатуры


CPU

считывание

данных клавиатуры Обработчиком аппаратного прерывания IRQ1

   060 RW

Клавиатурный буфер (регистр дванных)

IRQ=1

IRQ=12

Запрос прерываний для мыши


 

А также другие работы, которые могут Вас заинтересовать

40040. Философия любви– тема философского размышления 143.5 KB
  Только в любви и через любовь человек становится человеком. Без любви он неполноценное существо, лишенное подлинной жизни и глубины и не способное ни действовать эффективно, ни понимать адекватно других и себя. И если человек–центральный объект философии, то тема человеческой любви
40041. Создание отчета в режимах Автоотчет и Мастер отчетов. Редактирование отчета в режиме Конструктор 160.5 KB
  Создание отчета в режимах Автоотчет и Мастер отчетов.Редактирование отчета в режиме Конструктор Цель работы: получение навыков конструирования отчетов в режимах автоотчета и мастера отчетов. На экране появится окно режимов создания нового отчета представленное на рис. Окно режимов создания отчета Выбрать режим Автоотчет: ленточный и в качестве источника данных таблицу Список.
40042. Молодежный центр как субъект организации досуга молодежи 299.5 KB
  Современные проблемы организации молодежного досуга. Анализ деятельности культурно – досуговых центров по организации досуга молодежи «Молодежного центра Жаштык» и «Продюсерского центра». Принципы и формы организации досуговой деятельности...
40043. Создание надежной системы защиты предприятия 2.73 MB
  Целью данного проекта является создание надежной системы защиты предприятия, функционирование которой направлено на защиту деятельности сотрудников, информационных и материальных ценностей от внутренних и внешних угроз.
40044. Влияние газовой промышлености на окружающую среду 111 KB
  Геологический метод является начальным методом разведки. Этот метод заключается в том, что геологи выезжают участок, который нужно исследовать и проводят там все необходимые работы, которые включают в себя...
40045. Знакомство с приложением PowerPoint. Создание слайдов. Вставка в слайды различных объектов 136 KB
  Установить для заголовка размер шрифта 60 пт цвет красный. Установить для заголовка тень желтую с помощью кнопки Тень на панели инструментов Рисование. Установить для подзаголовка размер шрифта 40 пт цвет синий тень голубую. Установить фон слайда белый мрамор с помощью команды Формат Фон вкладка Текстура.
40046. Приложение MICROSOFT INTERNET EXPLORER 107 KB
  Сохраните открытую страничку в своей папке: выполните команду Файл Сохранить как; в окне Сохранение вебстраницы откройте или создайте папку ФамилияГруппа; в поле Имя файла введите его название например Студенческая_жизнь; в поле Тип файла выберите Вебстраница полностью и нажмите кнопку Сохранить. Откройте в программе Проводник свою папку и проанализируйте размер трех созданных в ней файлов. Сохраните найденную информацию в файле Об образовании поместив его в собственную папку...
40047. Расчёт и исследование технологической системы разгрузки космического зеркала менисковой формы с переменной толщиной мениска вдоль радиального направления 14.64 MB
  Исследование особенностей технологической системы разгрузки космического астрономического зеркала с целью обеспечения разгруженного состояния зеркала в процессе его контроля и обеспечению технологических условий с условиями эксплуатации зеркала в космическом пространстве...
40048. Комплекс технических мероприятий по эксплуатации и наладке устройства ЭСПУ электроавтоматики и электропривода согласно исходным данным 1.82 MB
  Целью дипломного проекта является приобретение навыков при эксплуатации электронных систем программного управления и выполнения наладочных операций на каждом этапе наладки электронных узлов, а также обеспечение надёжности работы электронных систем программного управления (ЭСПУ)...