La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Teclado.

Presentaciones similares


Presentación del tema: "Teclado."— Transcripción de la presentación:

1 Teclado

2 Estructura del teclado

3 Scan Code Después de la exploración, el controlador de teclado genera un ScanCode Se genera un ScanCode al pulsar una tecla y al liberarla El receptor distingue y actúa en consecuencia La pulsación: “make” La liberación: “break”

4 8048/8042 En el teclado reside el microcontrolador 8048
Obtiene el ScanCode y lo envía de forma serial-síncrono al sistema Start bit 8 bits de ScanCode paridad impar Stop bit

5 8048/8042 En el sistema reside el 8042
Recibe el ScanCode y genera una interrupción IRQ1 del controlador de interrupciones INT 9 del vector de interrupciones (BIOS)

6 Tipos de teclas Caracteres imprimibles
Controles de tecla Shift, Alt,Ctrl... Otros F1,...,ImprPant, Pausa, ...

7 BIOS Al recibir la tecla el 8042 genera la interrupción
La rutina de INT 9 lee el carácter de puerto 60h Testea el ScanCode. Activa de nuevo la interrupción

8 Testeo de la tecla Si es imprimible lo almacena en el buffer de teclado Si es de control de tecla no lo almacena modifica el byte de estado apropiadamente 417h..418h Si es otra tecla almacena el ScanCode y su código ascii en el buffer 00 Si no existe un código ascii adecuado Si es un Break desecha el ScanCode Un SC break es igual al SC make previo +80h Si transcurren >05s se copia de nuevo el último carácter en el buffer

9 Funciones de Bios Para leer de teclado BIOS ofrece INT 16h
AH=0 Lee un carácter del buffer, con bloqueo y lo elimina del buffer AH= ScanCode AL=Código Ascii o 00h AH=1 Lee un carácter del buffer, sin bloqueo. No lo elimina del buffer AH=ScanCode (o Código Tecla si AL=0) si Zf=0 AL=Código Ascii o 00 si Zf=0

10 Int 16h AH=2 devuelve el byte de estado AL byte de estado
d7 Activado Insert d6 Activado Capslock d5 Activado Numlock d4 Activado Scroll lock d3 Pulsado Alt d2 Pulsado Ctrl d1 Pulsado Shift Left d0 Pulsado Shift Right

11 Int 16h Funciones adicionales.
AH=10h lee un carácter incluyendo sección extendida (con bloqueo) Puede aparecer E0h en AH, referido al teclado ampliado AH=11h lee un carácter incluyendo sección extendida (sin bloqueo) AH=12h lee estado de la sección extendida En AH byte de estado teclado ampliado

12 Int 16h AH=12 devuelve el byte de estado teclado ampliado
AH Segundo byte de estado d7 Pulsado PetSys d6 Pulsado Capslock d5 Pulsado Numlock d4 Pulsado Scroll lock d3 Pulsado Right Alt d2 Pulsado Right Ctrl d1 Pulsado Left Alt d0 Pulsado Left Ctrl AL byte de estado d7 Activado Insert d6 Activado Capslock d5 Activado Numlock d4 Activado Scroll lock d3 Pulsado Alt d2 Pulsado Ctrl d1 Pulsado Shift Left d0 Pulsado Shift Right

13 Tipos de teclado PC/XT. 83 Teclas PC/AT. 84 Teclas. + Sys o PetSys
MF-II 102 Teclas. + Keypad Teclas de función arriba + F11,F12 AltGr (equivalente a Ctrl+Alt) leds Envía una identificación cuando se le pide.

14 Teclas especiales ImprPant dispara la Int 5h Pausa detiene el sistema
Ctrl y Inter dispara la Int 1Bh (IRET) PetSis dispara la Int 15h con AH=85h En principio está vacía (IRET)

15 Buffer de teclado 41Eh..43Dh 2 bytes por tecla pulsada
Un puntero de cabeza 41Ah y 41Bh lugar donde almacenar la siguiente tecla leída Un puntero de cola 41Ch y 41Dh lugar de donde lee la última tecla El buffer es circular

16 The 80x86 IBM PC and Compatible Interrupción 16h de Bios
PC Interno ed. Marcombo The 80x86 IBM PC and Compatible Muhammad Ali Mazidi... Prentice Hall Interrupción 16h de Bios


Descargar ppt "Teclado."

Presentaciones similares


Anuncios Google