- •Лабораторная работа №3 Изучение интерфейса клавиатуры персональной эвм
- •Порядок выполнения работы.
- •Приложение 1 – Команды контроллера клавиатуры
- •Установить индикаторы состояния (еDh)
- •Выбрать альтернативный режим (f0h)
- •Холостые операции (еFh-f1h)
- •Идентификатор расширенной клавиатуры (f2h)
- •Установить частоту повторения клавиши (f3h)
- •Разрешить клавиатуру (f4h)
- •Запрет по умолчанию (f5h)
- •Установить условия по умолчанию (f6h)
- •Установить все клавиши (f7h, f8h, f9h, fАh)
- •Установить отдельные клавиши (fВh, fСh, fDh)
- •Коды ответов клавиатуры
Порядок выполнения работы.
Ознакомиться с теоретическими сведениями об интерфейсе клавиатуры, контроллере клавиатуры i8042. Ознакомиться с набором команд для управления клавиатурой.
Используя изложенные выше сведения, составить программы на языке высокого уровня, которые выполняют следующее:
а) устанавливает индикаторы клавиатуры в указанное пользователем состояние (вариант 1) или устанавливает указанные пользователем частоту повторения и время задержки клавиш (вариант 2) – двухбайтные команды.
б) выполняет программирование клавиатуры с помощью одной из однобайтных команд, согласно индивидуальному заданию (выдается преподавателем).
Приложение 1 – Команды контроллера клавиатуры
Команды контроллера клавиатуры приведены в табл. П1
Таблица П1 – Команды контроллера клавиатуры
Код |
Функция |
ЕDh |
Установить индикаторы состояния |
ЕЕh |
Эхо (средство диагностирования) |
F0h |
Выбрать альтернативный режим |
ЕFh-F1h |
Резерв - холостые команды (NОР) |
F2h |
Идентификатор расширенной клавиатуры |
F3h |
Установить частоту повторения клавиши |
F4h |
Разрешить клавиатуру |
F5h |
Запрет по умолчанию |
F6h |
Установить условия по умолчанию |
F7h-FАh |
Установить все клавиши |
FВh-FDh |
Установить отдельные клавиши |
FЕh |
Послать повторно |
FFh |
Сброс |
Установить индикаторы состояния (еDh)
"Установить индикаторы состояния" (EDh) - это двухбайтовая команда, которая изменяет состояние светодиодных индикаторов клавиатуры. После получения этой команды клавиатура прекращает сканирование, возвращает системе код АСК (FАh - код подтверждения) и ожидает от системы байта конфигурации. Байт конфигурации определяет установку светодиодных индикаторов.
После получения байта конфигурации клавиатура устанавливает индикатор состояния, возвращает код АСК и возобновляет сканирование. Если в то время, когда клавиатура ожидает байт конфигурации, поступает другая команда, выполнение команды "Установить индикаторы состояния" прекращается и выполняется новая команда. Слово состояния имеет следующий формат:
разряд 0: 1 - включить индикатор ScrollLock,
разряд 1: 1 – включить индикатор NumLock,
разряд 2: 1 – включить индикатор СарsLock.
Эхо (ЕЕh)
"Эхо" (ЕЕh) используется для диагностирования. После получения этой команды клавиатура возвращает ответ - "Эхо" (ЕЕh).
Выбрать альтернативный режим (f0h)
"Выбрать альтернативный режим" (F0h): клавиатура подтверждает эту двухбайтовую команду, сбрасывает выходной буфер и повторение клавиши. После этого она готовится к приему байта конфигурации, который задает рабочий режим. Клавиатура подтверждает байт конфигурации, устанавливает новый рабочий режим и возобновляет сканирование.
Байт конфигурации должен содержать номер устанавливаемого режима клавиатуры.
Когда система посылает байт конфигурации 00h, клавиатура отвечает кодом подтверждения и посылает байт конфигурации, указывающий системе текущий режим.
