¿Cómo funciona el controlador del teclado?

Los teclados de PC desde la PC IBM 5150 original han utilizado un método estandarizado de comunicación con su PC. Ese método ha cambiado un par de veces (primero a PS / 2, luego a USB y más recientemente a Bluetooth), pero los teclados que usan el mismo conector envían datos a la computadora de la misma manera. Estos datos llegan a la computadora en una secuencia binaria que contiene los códigos clave. Sin embargo, esta transmisión no es muy útil para los programas que se ejecutan en su PC. Ahí es donde entra el controlador del teclado.
El propósito principal del controlador del teclado es convertir los códigos de teclado sin formato enviados por el teclado a un formato que el sistema operativo y los programas en su computadora puedan entender. El método varía según el sistema operativo, pero generalmente se reduce a leer el flujo de datos entrantes desde el teclado, extraer los códigos de teclas, convertir los códigos de teclas al formato utilizado por el sistema operativo y hacer que esos códigos de teclas estén disponibles a través de algún tipo de API. El controlador también es responsable de decirle al teclado que active los LED de bloqueo de mayúsculas, bloqueo de desplazamiento y bloqueo numérico, que es esencialmente el mismo proceso en reversa.
Los teclados con características especiales, como la iluminación LED personalizada, incluirán un controlador personalizado que hace lo mismo que el controlador predeterminado, pero también comprende las funciones no estándar del teclado. Estas funciones pueden estar disponibles para otros programas en su PC, o pueden estar restringidas a una utilidad de configuración incluida.