Tengo dificultades para que la biblioteca de teclado PJRC PS2 funcione de manera confiable con el Arduino Leonardo. Soy relativamente nuevo en el uso del Arduino, pero esta biblioteca parece ser la forma recomendada de leer las pulsaciones de PS2.
Cuando ejecuto el croquis de ejemplo para hacer eco de las pulsaciones de teclas en el terminal serial, obtengo aproximadamente el 50% del los caracteres hicieron eco correctamente. La otra mitad consiste típicamente en caracteres al azar. Además, diría que solo el 30% de las pulsaciones de teclado se detectan realmente. Probé muchas teclas en el teclado para ver si había una falla mecánica, pero este error de identificación y detección les sucedió a todas.
Obtengo resultados muy diferentes usando el código de este blog que solo implementa el protocolo PS2 en un barebones camino. Todos los códigos de escaneo que se hacen eco de este programa son consistentes (y correctos después de que los busqué manualmente) y no hay retraso en la detección.
Por lo tanto, podría implementar mis propias tablas de búsqueda con el segundo ejemplo, pero tengo curiosidad por saber si existe una solución conocida para la publicación PJRC. Hay más funciones en esa biblioteca que me gustaría usar.