maxili3000

Páginas: 18 (4329 palabras) Publicado: 12 de abril de 2013
MINIX 2.0

DRIVER DEL TECLADO

INTRODUCCIÓN
El teclado es uno de los dispositivos más conocidos y usados en el mundo
de la informática. Su misión es la de interfaz entre el usuario humano y la
máquina. Es decir, permitir la comunicación entre ambos.
Para llevar a cabo esta comunicación, el primer paso es la activación de la
tecla por parte del usuario. De ello resulta una señal eléctricaque expresa la
posición de la tecla. Esta señal se gestiona en el procesador de teclado, que
se encuentra directamente en él.
El procesador de teclado convierte la señal eléctrica de la posición de la
tecla en un número de tecla, el Scan Code (código de muestreo o de
rastreo). Este código de muestreo no tiene ninguna relación con el carácter
que hay impreso sobre la tecla ni con la funciónque desempeña. Sólo
representa el número de la tecla. El procesador de teclado pasa el código de
muestreo al ordenador, donde es recibido por el controlador (driver) de
teclado. Esta transmisión se realiza en serie, ya que el cable de teclado
dispone sólo de una línea de datos.
Si se pulsan varias teclas simultáneamente, el procesador de teclado las
guarda momentáneamente en un bufferinterno que nunca llega a llenarse
ya que la transmisión se realiza de forma excesivamente rápida.
El controlador de teclado genera códigos de muestreo tanto para la
activación de una tecla como para cuando se suelta. Así el sistema puede
saber en todo momento si hay aún una tecla pulsada o si se ha soltado ya.
Así se reconoce también la activación simultánea de varias teclas.
Para diferenciar loscódigos de muestreo que describen la activación de una
tecla y su liberación, se habla de Make Codes (pulsación) y Break Codes
(liberación). El Break Code corresponde al Make Code, con la diferencia
de que adicionalmente tiene a 1 el séptimo bit. De esto resultan dos
consecuencias importantes.
- Por una parte, los Break Codes son siempre mayores o iguales a
128, y por otra parte el tecladopodrá tener como máximo 128 teclas, ya
que de otro modo los Make Codes colisionarían con los Break Codes y se
generarían confusiones.

1

MINIX 2.0

DRIVER DEL TECLADO

- Cada vez que el teclado envía un Make Code o Break Code al
ordenador, provoca automáticamente una interrupción de hardware. El
controlador de teclado es el que recibe los Make Codes y Break Codes,
formando a partirde ellos el código ASCII del carácter introducido, que es
suministrado al programa que haya actualmente en ejecución.
Para realizar esto, primero, el controlador de teclado ha de pedirle al
teclado el Make o Break Code. Si el controlador de teclado ha reconocido
el carácter introducido, ha de convertirlo en un código que el programa de
aplicación pueda entender. Los Scan Codes no ayudan eneste punto, ya
que no todos los teclados trabajan con el mismo juegos de Scan Codes.
Estos códigos se transforman sobre el llamado juegos de caracteres ASCII,
que se utiliza en todo el mundo de los ordenadores.
El carácter transformado no se transmite directamente al programa que hay
actualmente en ejecución, sino que primero se deposita en el Buffer de
Teclado.
Este buffer de teclado es unacola circular en la que existen dos punteros
para señalar el primer y último carácter almacenado en ella. Cada carácter
se almacena en dos bytes.

2

MINIX 2.0

DRIVER DEL TECLADO

KEYMAPS
Los teclados IBM PC no generan código ASCII directamente. Las teclas se
identifican con un número empezando por las teclas que están localizadas
en la parte superior izquierda del teclado, así latecla "ESC" estaría
numerada como 1, la "1" como la 2 y así sucesivamente. De esta forma,
cada tecla tiene asignado un número, incluidas las teclas 'modificadoras'
como el SHIFT, la cual tiene asignado un número para la tecla SHIFT
derecha y otro distinto para la izquierda.
Cuando una tecla es pulsada, MINIX recibe el número asignado a la tecla
como un código de rastreo o scan code. Este...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS