марки Lexmark и IBM, относящиеся к емкостной технологии. Лично я работаю с клавиатурой марки Lexmark, изготовленной в Unicomp, которая включает в себя устройство позиционирования TrackPoint, созданное IBM. Чувствительность и долговечность этой клавиатуры выше всяких похвал.
Интерфейс клавиатуры
Клавиатура состоит из набора переключателей, объединенных в матрицу. При нажатии клавиши процессор, установленный в самой клавиатуре, определяет координаты нажатой клавиши в матрице. Кроме того, процессор клавиатуры определяет продолжительность нажатия и может обработать даже одновременное нажатие нескольких клавиш. В клавиатуре установлен буфер емкостью 16 байт, в который заносятся данные при слишком быстрых или одновременных нажатиях. Затем эти данные в соответствующей последовательности передаются в систему.
Обычно при нажатии клавиш возникает эффект дребезжания, т. е. контакт устанавливается не сразу, а после нескольких кратковременных замыканий и размыканий. Процессор, установленный в клавиатуре, должен подавлять это дребезжание и отличать его от двух последовательных нажатий на одну и ту же клавишу. Сделать это довольно просто, поскольку переключение контактов при дребезжании происходит гораздо быстрее, чем при нажатии клавиши пользователем.
Клавиатура ПК фактически представляет собой небольшой компьютер, связанный с основной системой одним из двух способов:
■ с помощью стандартного разъема клавиатуры и специального последовательного канала передачи данных;
■ через порт USB.
Связь с системным блоком осуществляется через последовательный канал, данные по которому передаются по 11 бит, причем восемь из них собственно данные, а остальные — синхронизирующие и управляющие. Хотя это полноценный последовательный канал связи (данные передаются по одному проводнику), он не совместим со стандартным последовательным портом RS-232, который часто используется для подключения модемов.
В клавиатурах первых PC использовался микроконтроллер 8048, а в более новых компьютерах применяется микросхема 8049 со встроенной памятью ROM или другие микросхемы, совместимые с 8048 или 8049. Например, в расширенной клавиатуре IBM всегда использовался специализированный вариант процессора 6805 компании Motorola, совместимый с микросхемами Intel. Встроенный процессор клавиатуры сканирует матрицу переключателей, устраняет эффект дребезжания, вырабатывает при нажатии клавиши соответствующий скан-код и передает его на системную плату. Этот процессор имеет свою память, иногда небольшую память ROM и встроенный последовательный интерфейс.
В компьютере PC/XT последовательный интерфейс клавиатуры соединен с микросхемой 8255 программируемого периферийного интерфейса (Programmable Peripheral Interface — PPI) на системной плате. Эта микросхема, в свою очередь, подключена к контроллеру прерываний через линию IRQ 1, которая используется для сигнализации о том, что данные с клавиатуры доступны. Сами данные из микросхемы 8255 передаются в процессор через порт ввода-вывода с адресом 60h. Сигнал на линии IRQ 1 заставляет процессор компьютера перейти к подпрограмме обработки прерываний (INT 9h), которая интерпретирует скан-коды клавиатуры и определяет дальнейшие действия.