Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Периферийные устройства.doc
Скачиваний:
78
Добавлен:
22.05.2015
Размер:
3.43 Mб
Скачать
  1. Скан-коды и системная поддержка.

Скан – коды

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

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

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

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

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

Признак отпускания F0

Не модифицированный скан-код

1-й байт 2-й байт

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

Префикс Е0 (Е1)

признак F0

расширенный скан-код

Если клавиша генерирует пару кодов при нажатии, то при отпускании каждая пара кодов дает тройку кодов с обратным порядком их следования.

Считыванием из порта и интерпретацией скан-кодов занимается программа центрального процессора, выполняемая обработчиком прерываний IRQ.

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

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

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

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

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

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

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

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

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

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

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

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

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

  • Serial Mouse – использует интерфейс RS 232C и двух полярный сигнал с уровнями +3В и – 3В. Недостаток Serial Mouse является тол, что она занимает СОМ-порт и требует полного использования его штатной линии прерывания (IRQ4 для СОМ-1 и IRQ3 для СОМ-2).

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

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

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

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

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

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

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

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