Традиционная клавиатура PC представляет собой унифицированное устройство ввода со стандартным разъемом и последовательным интерфейсом связи с системной платой. В настоящее время используются так называемые расширенные (enhanced) клавиатуры AT пли PS/2, имеющие более 100 клавиш. Они вытеснили первые 84-клавишные клавиатуры AT и тем более клавиатуры XT. По электрическому интерфейсу клавиатуры XT и AT совпадают, за исключением того, что двунаправленный интерфейс позволяет клавиатуре AT принимать команды от системной платы. Однако по логическому интерфейсу они несовместимы (клавиатура AT иногда имеет переключатель режима XT/AT). Клавиатура PS/2 отличается от AT только исполнением разъема, при необходимости можно использовать переходник.
Клавиатуры имеют внутренний микроконтроллер, способный определить факты нажатия и отпускания клавиш, при этом можно нажимать очередную клавишу, даже удерживая несколько ранее нажатых. При нажатии клавиши клавиатура передает идентифицирующий ее скан-код. При удержании клавиши в нажатом положении через некоторое время клавиатура начинает автоповтор передачи скан-кода нажатия этой клавиши. Задержка автоповтора (typematic delay) и скорость автоповтора (typematic rate) для клавиатур AT программируются. Расширенная клавиатура позволяет выбирать 1 из 3 наборов скан-кодов.
С распространением шины USB появились клавиатуры и с этим интерфейсом; они имеют и встроенный хаб, например для подключения мыши USB. Клавиатура USB питается от шины. Для клавиатуры USB требуется специальная поддержка со стороны BIOS; она имеется в современных системных платах.
Для подключения клавиатуры предназначен последовательный интерфейс, состоящий из двух обязательных сигналов KB-Data и KB-Clock. Необязательный сигнал KB-Reset сбрасывает клавиатуру низким уровнем сигнала. Интерфейс на системной плате XT реализован аппаратной логикой — регистром сдвига, параллельный выход которого подключается ко входам порта А системного интерфейса 8255. По приему байта от клавиатуры логика вырабатывает запрос аппаратного прерывания IRQ2, обработчик которого может прочитать принятый байт из порта 60h. С помощью бит 7 и 6 порта 61h возможна программная блокировка и сброс клавиатуры соответственно. Сброс клавиатуры XT осуществляется принудительным обнулением линии KB-Clock.
Интерфейс клавиатуры AT построен на микроконтроллере 18042, обеспечивающем в отличие от XT двунаправленный интерфейс с клавиатурой. Передача информации к клавиатуре используется для управления индикаторами ее состояния и программирования параметров (автоповтор, набор скан-кодов).
Хотя электрический интерфейс клавиатур XT и AT совпадает (за исключением возможности двунаправленного обмена в AT), логические форматы посылок существенно отличаются. POST способен производить диагностику клавиатуры, причем подключение клавиатуры неподходящего типа или не подключенную клавиатуру он воспримет как ошибку. Если проверка клавиатуры разрешена в BIOS Setup, то по этой ошибке POST будет сколь угодно долго дожидаться получения кода нажатия клавиши F1.
Конструктивно возможны два варианта разъема — обычная 5-контактная розетка DIN (аналогичная применяемой в бытовой радиоаппаратуре) или малогабаритная розетка mini-DIN, пришедшая от компьютеров семейства PS/2, На этот же разъем через плавкий предохранитель поступает и напряжение питания клавиатуры +5 В. Электрически и логически интерфейс клавиатуры PS/2 повторяет интерфейс клавиатуры AT, поэтому для согласования типа разъема применяют специальные переходники. Питание от разъема клавиатуры часто используется такими устройствами, как внешние накопители или адаптеры локальных сетей, подключаемыми к параллельному порту.
0 коммент.:
Отправить комментарий