La biblioteca PS2Keyboard utiliza uno de los dos interrupciones externas disponibles para reaccionar en la entrada de teclado. Una vez que se haya recibido esa entrada, se almacena en una memoria intermedia de un byte y está disponible para ser leído.
El siguiente esquema muestra cómo conectar un conector PS2:
Pin del conector | Pin Arduino |
---|---|
1 | Pin por el que queremos recibir los datos |
2 | dc |
3 | GND |
4 | +5 |
5 | 3 |
6 | dc |
Este es un pequeño ejemplo de cómo se usa esta librería:
#include <PS2Keyboard.h> #define DATA_PIN 4 PS2Keyboard keyboard; void setup() { keyboard.begin(DATA_PIN); Serial.begin(9600); Serial.println("hi"); delay(1000); } void loop() { if(keyboard.available()) { byte dat = keyboard.read(); byte val = dat - '0'; if(val >= 0 && val <= 9) { Serial.print(val, DEC); } else if(dat == PS2_KC_ENTER) { Serial.println(); } else if(dat == PS2_KC_ESC) { Serial.println("[ESC]"); } } }