Escolar Documentos
Profissional Documentos
Cultura Documentos
INTRODUCCIN
El puerto PS2 se introdujo en la Personal System / 2, ordenadores personales de IBM. Es un interfaz de un amplio apoyo para un teclado y un mouse para comunicarse con el host. El Puerto PS2 contiene dos cables para fines de comunicacin. Un cable es para los datos, que transmite en un flujo en serie. El otro cable es para la informacin del reloj, que especifica cuando los datos son vlidos y se pueden recuperar. La informacin es transmitida como un paquete de 11-bit que contiene un bit de inicio, 8 bits de datos, un bit de paridad par y un bit de parada. Mientras que el formato bsico del paquete es idntico para un teclado y un mouse, la interpretacin de los bits de datos es diferente. La placa de prototipo FPGA tiene un puerto PS2 y acta como host. En este captulo revisaremos la interfaz de teclado y para abarcar la interfaz del ratn en el captulo 10. La comunicacin del puerto PS2 es bidireccional y el host puede enviar un comando para el teclado o el ratn para ajustar ciertos parmetros. Para nuestros propsitos, la comunicacin bidireccional apenas se requiere para el teclado PS2, y por lo tanto nuestro estudio se limita a una direccin, desde el teclado a la placa de prototipos. El diseo bidireccional se examina en la interfaz del ratn en el captulo 10.
entre 10 KHz y 16,7 KHz), y la seal ps2d es estable por lo menos 5 ps antes y despus del flanco de bajada de la seal ps2c.
9.3. Cdigo de escaneo del teclado PS 9.3. 1. Descripcin del cdigo de escaneo
Un teclado consta de una matriz de teclas y un microcontrolador integrado que monitorea (es decir, escanea) las actividades de las teclas y en consecuencia enva el cdigo de escaneo. Tres tipos de actividades del teclado son observadas: Cuando una tecla es presionada, el cdigo de marca es transmitido. Cuando una tecla se mantiene constantemente presionada, una condicin conocida como typematic, el cdigo de marca se transmite repetidamente a una tasa especfica. De forma predeterminada, un teclado PS2 transmite el cdigo de marca 100 ms despus de que una tecla ha sido pulsada durante 0,5 segundos. Cuando se suelta una tecla, se transmite el cdigo de la rotura de la llave. El cdigo de marca de la parte principal de un teclado de PS2 se muestra en la Figura 9.3. Es normalmente de 1 byte de ancho y representado por dos nmeros hexadecimales. Por ejemplo, la marca de cdigo de la tecla A es IC. Este cdigo puede ser transportado por un paquete cuando se transmiten. El hacer cdigos de unas cuantas teclas de propsito especial, que se conocen como
las teclas extendidas, pueden tener 2 a 4 bytes. Algunas de estas teclas se muestran en la Figura 9.3. Por ejemplo, la marca de cdigo de la flecha superior de la derecha es EO 75. Se necesitan varios paquetes para la transmisin. Los cdigos de rotura de las teclas normales constan de FO seguido por el cdigo de marca de la tecla. Por ejemplo, el cdigo de ruptura de la tecla A es FO IC. El teclado PS2 transmite una secuencia de cdigos de acuerdo con las actividades clave. Por ejemplo, cuando se presiona y suelta la tecla, el teclado transmite primero el cdigo de marca y luego el cdigo de ruptura:
Si tenemos la tecla por un rato antes de soltarlo, se transmitir el cdigo de marca varias veces: 1C 1C 1C 1C FO 1C Varias claves pueden ser presionadas al mismo tiempo. Por ejemplo, podemos pulsar primero la tecla shift (cuyo cdigo de marca es 12) y luego la tecla A, y se suelta la tecla A y luego se suelta la tecla shift. La secuencia de cdigo de transmisin sigue los cdigos de los dos del cdigo de marca y del cdigo de ruptura: 12 1C FO 1C FO 12 La secuencia anterior es la forma en que normalmente obtenemos una A mayscula. Tenga en cuenta que no hay ningn cdigo especial para distinguir las teclas minsculas y maysculas. Es la responsabilidad del dispositivo principal llevar un registro de si se pulsa la tecla de maysculas y en consecuencia determinar el caso.
Recordemos que el UART tiene una FIFO de cuatro palabras, y por lo tanto no se producir desbordamiento. Tenga en cuenta que el receptor UART no se utiliza y los puertos correspondientes se asignan a constantes o se deja en blanco.