Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Периферийные устройства _ЧАСТЬ_1_Осокин.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
14.85 Mб
Скачать

Тема 2 Устройства ввода

2.1. Клавиатура

2.1.1. Принцип действия клавиатуры

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

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

Схема содержит набор клавиш, генератор тактовых сигналов G, счетчик CT, дешифратор с выходами с открытым коллектором DC, шифратор CD, регистр кода нажатой клавиши RG, постоянное запоминающее устройство ROM, схему фиксации нажатия клавиши (схема ИЛИ и И). Схема работает следующим образом: импульсы от генератора поступают на счетчик; сигналы с выходов счетчика поступают на входы Х запоминающего устройства и дешифратора; выходы дешифратора образуют вертикальные ряды шин, которые поочередно находятся в активном состоянии. В случае если какая-либо клавиша нажата, то сигнал с вертикальной шины поступает на соответствующий вход шифратора. Шифратор преобразует код на выходе шифратора в позиционный код, который поступает на входы Y адреса запоминающего устройства. По синхросигналу из ROM по сформированному адресу XY считывается код нажатой клавиши и помещается в регистр. Отметим, что частота генератора достаточно велика, поэтому опрос состояния клавиш происходит достаточно быстро. Для исключения влияния дребезга контактов выдача кода символа из регистра задерживается на время завершения переходного процесса.

Рис. 2.1. Функциональная схема клавиатуры

Для указания позиции на экране монитора, на которой будет отображаться следующий вводимый с клавиатуры знак, используется курсор – символ на экране.

В современных клавиатурах для управления работой клавиатуры используют контроллеры. Это позволяет упростить аппаратуру, увеличить ее возможности, повысить надежность. Вертикальные и горизонтальные шины матрицы контактов подключаются соответственно к портам вывода и ввода контроллера; для передачи в системный блок сформированного кода нажатой клавиши используется порт ввода-вывода контроллера. Контроллер работает под управлением программы, хранимой в ПЗУ. Программа выполняет следующие функции: формирует последовательность кодовых комбинаций для опроса X (столбцов); анализирует входные комбинации сигналов Y (строк) клавиатуры; формирует код нажатой клавиши в соответствии с кодовыми таблицами; передает сформированный код нажатой клавиши в системный блок. На рис. 2.2 приведена блок-схема простейшей программы такого контроллера.

Рис. 2.2. Блок-схема простейшей программы работы контроллера клавиатуры

Вначале программа устанавливает исходное состояние счетчика повторений n:=0 и начальные коды столбца X0:=00:01 и строки Y0:=00:00. Каждое следующее значение кода X формируется путем циклического сдвига X0 на один разряд. Значение X передается в порт вывода, к выходам которого подсоединены вертикальные шины матрицы ключей клавиатуры. На горизонтальных шинах матрицы, подключенных ко входам порта ввода, формируется одна из комбинаций сигналов, программно считываемая контроллером.

Эта комбинация содержит:

  • все нули, если ни одна из клавиш не нажата или нажатая клавиша не находится в вертикальном ряду, на который из порта вывода подается сигнал «1»; программа производит очередной сдвиг кода X, т.е. продолжает поиск нажатой клавиши;

  • одну единицу, если нажата одна клавиша вертикального ряда. По текущему значению кода опроса столбца X и принятому из порта ввода строки Y программно формируется весовой код нажатой клавиши. Для этого вначале коды опроса столбца X и строки Y преобразуются в двоичный вид X2 и Y2. Затем определяется весовое значение K нажатой клавиши:

K=pX2+Y2,

где p – число клавиш в одной строке матрицы клавиатуры.

Значение K запоминается и цикл опроса повторяется. При каждом последующем цикле опроса клавиатуры производится сравнение текущего значения Ki и предшествующего Ki–1. При их совпадении увеличивается на единицу содержимое счетчика повторений, а при несовпадении счетчик повторений сбрасывается в нуль и в качестве весового значения нажатой клавиши принимается текущее значение Ki. Если в течение n=N циклов весовое значение нажатой клавиши не менялось, то оно используется для формирования стандартного кода символа, называемого скэн-кодом. Этим достигается задержка на время переходного процесса в ключе, т.е. исключаются ошибки из-за дребезга контактов.

В качестве датчиков нажатия клавиш применяются кнопки на основе токопроводящей резины, механические контакты (открытые и герконовые), емкостные датчики и датчики на эффекте Холла. Используемые клавишные датчики влияют на надежность, долговечность и, конечно же, цену клавиатуры. Для изготовления дешевых клавиатур используются кнопки на основе токопроводящей резины. Под каждой клавишей находится пластмассовый штырь, направленный вертикально вверх, который на нижнем конце выполнен в виде штемпеля, изготовленного из смеси резины с металлом. Ниже этого резинового штемпеля находится пластина с направляющими и контактными площадками, которая стационарно привинчена к корпусу панели. При нажатии клавиши штемпель соприкасается с этими контактными площадками, благодаря чему замыкается цепь. Нажатие клавиши на такой клавиатуре исключительно мягкое и, если не смотреть на экран, неизвестно, нажата клавиша или нет.

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

Как уже отмечалось, собственно клавиатура осуществляет последовательное сканирование состояния клавиш. Как правило, внутри корпуса любой клавиатуры, помимо датчиков клавиш, расположен микроконтроллер клавиатуры. В качестве микроконтроллеров клавиатуры обычно используются микросхемы 8049 фирмы Intel со встроенной ROM памятью или совместимые с ними. Например, в компьютерах IBM часто используется процессор Motorola 6805.