¿Cuál será el resultado de presionar dos teclas del teclado al mismo tiempo?

Manteniéndolo realmente simple para comenzar, todos los interruptores clave están conectados en una matriz de columnas y filas. Según el teclado original de PC / AT de IBM, el controlador activará una fila y luego escaneará todas las columnas para detectar si se ha presionado una tecla o no. Luego se moverá a la siguiente fila y se repetirá hasta que haya escaneado la última columna de la última fila. Dada la gran cantidad de controladores / decodificadores utilizados por diferentes fabricantes en estos días, es posible que los conmutadores no estén dispuestos en el mismo orden que el teclado IBM AT original, pero generarán los mismos códigos para cada tecla para que sigan siendo compatibles. Con la nueva disposición para el diseño final “Modelo M Extendido” de IBM, agregando las teclas de cursor adicionales, se aplica esta misma situación. Cuando usa las teclas de cursores dedicadas que no están en el número pagado, generan más de un código que se envía a la computadora.

Si tuvo éxito presionando A y B exactamente al comienzo de un ciclo de escaneo y luego observando el diseño QWERTY, el A será escaneado y leído antes que el B , y aparecerán en la pantalla como “AB”.

Si tuvo éxito al presionar A y B mientras el escaneo se realizó entre estas dos teclas, el resultado en la pantalla sería “BA”.

Desafortunadamente, no es tan simple. El controlador debe tener en cuenta el rebote de contacto . Cuando se presiona el actuador, permite que los contactos se unan bajo la presión del resorte para completar el circuito. Cuando los contactos “colisionan”, rebotan entre sí varias veces antes de que finalmente permanezcan conectados. Si el ciclo de escaneo es extremadamente alto (como se promociona en algunos teclados de juegos), entonces es posible que A y B se puedan registrar varias veces cada uno. Dependiendo de cuán “propenso al rebote” sea cada interruptor, podría obtener un resultado en pantalla como “AAABABBABAABBBAB” o incluso más. Esto significa que el controlador tiene que decidir cuánto tiempo esperar desde el primer registro hasta que el interruptor esté realmente estable antes de generar la señal para enviar a la PC.

Cuando se trata de choque simulado de barra de tipo en un teclado electrónico, solo he visto esto implementado por Olivetti. Si se presionan dos teclas en un intervalo demasiado cercano, la máquina de escribir entrará en un estado de error e ignorará ambas pulsaciones de teclas, esperando que la tecla cancelar elimine el error. Retroceder o eliminar es fácil en la pantalla de una computadora. Poner las letras fuera de servicio en papel desperdicia cinta y cinta correctora.

Teniendo en cuenta que los dedos humanos nunca actuarían con una precisión que se consideraría absoluta desde el punto de vista de la señal eléctrica, siempre habrá una tecla presionada por delante de otra. Por lo tanto, se escribirán ambos caracteres.
Existe la posibilidad de que aparezca un segundo personaje con un ligero retraso (apenas perceptible por un ojo humano, pero aún así), ya que una aplicación que acepta pulsaciones de teclas necesita algo de tiempo para procesar cada una de ellas y mostrar el resultado, mientras que las teclas ya presionadas podrían ser almacenado en una cola.
En una situación promedio, los dedos humanos se mueven más lentamente que un software procesa cada pulsación de tecla, pero en el caso de que dos teclas se presionen simultáneamente (que, de nuevo, nunca es “simultáneamente” desde la velocidad del punto de vista de la señal eléctrica) el segundo carácter permanecerá en un cola mientras se procesa y procesa el primero.