Клавиатура – важнейшее для пользователя устройство, с помощью которого осуществляется ввод данных, команд и управляющих воздействий в ПК. На клавишах нанесены буквы латинского и русского алфавитов, десятичные цифры, математические, графические и специальные служебные знаки, знаки препинания, наименования некоторых команд, функций и т.д. В зависимости от типа ПК назначение клавиш, их обозначение и размещение может варьироваться. Чаще всего клавиатура содержит 101 клавишу, но встречаются еще и старые клавиатуры с 84 клавишами и новые, удобные для использования в системе Windows клавиатуры со 104 клавишами. Имеются клавиатуры с встроенными манипуляторами типа трекбол (TrackBall) и т.д.
Все клавиши можно разбить на следующие группы:
· буквенно-числовые клавиши, предназначенные для ввода текстов и чисел;
· клавиши управления курсором; эта группа клавиш может быть использована также для ввода числовых данных, просмотра и редактирования текста на экране;
· специальные управляющие клавиши: переключение регистров, прерывание работы программы, вывод содержимого экрана на печать, перезагрузка ОС ПК и т. д.;
· функциональные клавиши, широко используемые в сервисных программах в качестве управляющих клавиш.
Буквенно-цифровые клавиши занимают центральную часть клавиатуры. Расположение букв и цифр на клавишах соответствует расположению их на клавиатуре пишущей машинки. Латинские буквы на клавиатуре расположены по стандарту QWERTY, названному так по последовательности первых шести букв в верхнем ряду буквенной клавиатуры. Для русского алфавита размещение буквенно-цифровых клавиш соответствует расположению клавиш на пишущих машинках с русским шрифтом – стандарт ЙЦУКЕН (первые шесть букв в верхнем ряду буквенной клавиатуры). Для обеспечения ввода с клавиатуры русских букв необходим соответствующий драйвер, который должен быть предварительно загружен в оперативную память и оставаться в ней резидентно. Переключение клавиатуры в режим ввода русских букв (символов кириллицы) и обратный переход на ввод латинских букв осуществляется нажатием одной или двух специальных клавиш: для разных драйверов по-разному, но чаще всего Ctrl и Shift (в ОС Windows).
Для буквенно-цифровых клавиш существует понятие регистра, то есть режима их использования. Имеется две пары регистров: верхний/нижний и латинский/русский. В верхнем регистре вводятся прописные (заглавные) буквы, а в нижнем – строчные (маленькие), а также специальные символы и цифры, помещенные соответственно на верхней и нижней части клавиш. В русском регистре вводятся символы кириллицы, а в латинском – латиницы. Регистры могут использоваться в различных сочетаниях, например верхний латинский, нижний русский и т. п.
Выбор режима нижний/верхний производится при помощи клавиши Caps Lock (Capitals Lock – фиксация прописных букв) и Shift (Shift сдвиг, замена). Клавиша Caps Lock закрепляет режим ввода прописных или строчных букв. В режиме прописных букв («верхний») светится индикатор Caps Lock в верхней правой части клавишной панели. Клавиша Shift изменяет режим клавиатуры на противоположный, пока она нажата, клавиша Space вводит пробел в строку символов.
Клавиши управления курсором расположены в правой части панели клавиатуры. Для удобства работы они продублированы и состоят из трех групп:
1) малая цифровая клавиатура;
2) клавиши просмотра текста на экране и его редактирования;
3) клавиши управления курсором.
Клавиши малой цифровой клавиатуры могут быть использованы в двух режимах:
1) в режиме управления курсором;
2) в режиме ввода цифр, знаков математических операций и точки.
Выбор режима производится при помощи клавиши Num Lock (Number Lock – фиксация цифр) и Shift. Num Lock закрепляет режим ввода цифр, a Shift изменяет режим клавиатуры на противоположный, пока она нажата.
В режиме ввода цифр, математических знаков и точки светится индикатор Num Lock в верхней правой части клавишной панели.
Функциональные клавиши F1-F12 размещены в верхней части клавиатуры, клавиши предназначены для различных специальных действий; они программируются и для каждого программного продукта имеют свое назначение (в принципе программироваться могут и некоторые специальные клавиши).
В большинстве программ принято, что клавиша F1 (клавиша Help — помощь) связана с вызовом подсказки. При входе в программу по F1 выдается общая подсказка с кратким описанием вариантов функционирования программы и назначением функциональных клавиш в ней. При работе с программой по F1 выдается контекстно-зависимая подсказка, то есть подсказка по тому режиму, по той функции, которая программой реализуется в данный момент.
Блок клавиатуры в профессиональных ПК конструктивно выполнен автономно от основной платы компьютера и кроме клавиатуры содержит контроллер клавиатуры, состоящий из буферной памяти и схемы управления. Он подключается к основной плате с помощью 4-проводного интерфейса (линии интерфейса используются для передачи соответственно тактовых импульсов, данных, напряжения питания +5 В). Для клавиатур существует несколько вариантов интерфейсов: стандартный разъем DIN, разъем PS/2, инфракрасный порт (IrDA), интерфейс USB.
Контроллер клавиатуры осуществляет:
· сканирование (опрос) состояния клавиш;
· буферизацию (временное запоминание) до 20 отдельных кодов клавиш на время между двумя соседними опросами клавиатуры со стороны МП;
· преобразование с помощью программируемых системных таблиц (драйвера клавиатуры) кодов нажатия клавиш (SCAN-кодов) в коды ASCII;
· тестирование (проверку работоспособности) клавиатуры при включении ПК.
При нажатии и отпускании клавиши в буферную память контроллера клавиатуры поступает код нажатия или отпускания (соответственно 0 или 1) в седьмой бит байта и номер клавиши или ее SCAN-код в остальные 7 бит байта. При поступлении любой информации в буферную память посылается запрос на аппаратное прерывание, инициируемое клавиатурой. При выполнении прерывания SCAN-код преобразуется в код ASCII, и оба кода (SCAN-код и ASCII-код) пересылаются в соответствующее поле ОЗУ машины. При этом по наличию кода отпускания проверяется, все ли клавиши отпущены в момент нажатия следующей клавиши (это необходимо для организации совместной работы с клавишами Shift, Ctrl и Alt).
Контроллер клавиатуры организует и автоматическое повторение клавишной операции: если клавиша нажата более 0,5 с, то генерируются повторные коды нажатия клавиши через регулярные интервалы так, как если бы вы клавишу нажимали повторно.