Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Периферийные устройства ЭВМ_2009.doc
Скачиваний:
4
Добавлен:
01.04.2025
Размер:
2.43 Mб
Скачать

Лабораторная работа №3 «Изучение взаимодействия клавиатуры и компьютера»

Целью данной лабораторной работы является изучение принципов взаимодействия контроллера клавиатуры и компьютера.

Для выполнения лабораторной работы используется разработанное авторами специализированное приложение «Клавиатура», которое запускается exe-файлом klava.exe.

Время выполнения – 90 мин.

Задание на лабораторную работу

С помощью программного приложения «Клавиатура», команд, значений скан-кодов клавиш и временных параметров смоделировать взаимодействие контроллера клавиатуры и компьютера (вариант диалога задается преподавателем). Справочная информация, используемая для выполнения лабораторной работы, приведена в таблицах 29-34.

Таблица 29. Коды основных команд

Код команды

Описание команды

1

2

0xFF

Reset – выполнение самопроверки и загрузка установки

по умолчанию

0xF6

Set Default – сброс в начальное состояние (задержек

и светодиодов)

0xF5

Set Default Disable – запрет сканирования

клавиш

0xF4

Enable – разрешить сканирование

клавиш

0xF3

Set Typematic Rate/Delay – установка задержки и частоты повторения

0xEE

Echo – Эхо (запрос или ответ)

0xED

Set/Reset LEDs – устанавление состояния диодов клавиатуры

0xFA

Acknowledge – подтверждение

0xAA

Controller self-test – самопроверка завершилась

успешно

0xFD

Diagnostic Failure – ошибка внутреннего

текста

Таблица 30. Основные скан-коды клавиатуры

Клавиша

Код

Клавиша

Код

1 !

16

A

1C

2 @

1E

S

1B

3 #

26

D

23

4 $

25

F

2B

5 %

2E

G

34

6 ^

36

H

33

7 &

3D

J

3B

8*

3E

K

42

9 (

46

L

4B

0 )

45

; :

4C

- -

4E

‘ “

52

= +

55

` ~

0E

Backspace

66

Shift (L)

12

Tab

0D

\ |

61

Q

15

Z

1A

W

1D

X

22

E

24

C

21

R

2D

V

2A

T

2C

B

32

Y

35

N

31

U

3C

M

3A

I

43

, <

51

O

44

. >

49

P

4D

/ ?

4A

[ {

54

Shift (R)

59

] }

5B

Alt (L)

11

Enter

5A

(Space bar)

29

Ctrl (L)

14

Caps Lock

58

Примечание. Для ввода символов верхнего регистра (‘A’, ‘F’, ‘!’,’#’ ) используется левый Shift.

Таблица 31. Выбор частоты повтора

Биты

Частота повторов

(cps – повторы в секунду)

000000

30

000010

24

000100

20

000111

16

001010

12

001100

10

Таблица 32. Выбор задержки

Биты

Задержка (ms)

00

250

01

500

10

750

11

1000

Таблица 33. Выбор светодиодов

Биты

Светодиоды

001

Scroll Lock

010

Num Lock

100

Caps Lock

Таблица 34. Описание портов

Номер порта

Описание

0x60

Используется для передачи параметров команд и скан-кодов клавиатуры и для ответа контроллером

0x64

Управляющий порт. Используется для отправки команд

Окно пользовательского интерфейса используемого приложения приведено на рисунке 29. В левой части окна находятся: переключатель для выбора передающей стороны (компьютер или контроллер), поле для ввода номера порта, поле для ввода команды и поле для задания параметров команд. Там же расположены управляющие кнопки Послать байт и Проверка, поля для ввода значения частоты повторений и времени задержки, а также схематичное изображение светодиодов, имеющихся на реальной клавиатуре.

Рис. 29. Окно пользовательского интерфейса программы «Клавиатура»

В правой части окна находится Экран сообщений, куда выводятся сообщения, которыми обмениваются передающие стороны. Под Экраном сообщений находится поле, в которое вводится последовательность скан-кодов.

Кнопка Послать байт служит для передачи и выполнения выбранной команды. Кнопка Проверка предназначена для проверки правильность ввода последовательности скан-кодов. После нажатия на эту клавишу появляется сообщение с рассчитанным по введенным скан-кодам значением проверочного числа (рис. 30). Если это число совпадает с числом, которое находится у преподавателя, то введенная студентом последовательность скан-кодов верна.

Рис. 30. Окно сообщения о значении рассчитанного

проверочного числа

Отчет по лабораторной работе должен содержать:

краткий теоретический материал;

перечень используемых команд и их параметров для каждого из пунктов задания;

подготовленную для ввода строку скан-кодов (с подробными пояснениями);

окно пользовательского интерфейса программы «Клавиатура» после завершения выполнения всех заданий;

выводы.