int pins[] = {0, 1, 2, 3};
int vals[] = {0, 0, 0, 0};
int lastVals[] = {0, 0, 0, 0};
String ch[] = {"a", "d", "s", "w"};
long lastDebounceTime[] = {0, 0, 0, 0};
long debounceDelay = 10;
void setup() {
for(int i = 0; i < 4; i++)
{
pinMode(pins[i], INPUT);
}
}
void loop(){
for(int i = 0; i < 4; i++)
{
int reading = digitalRead(pins[i]);
if (reading != lastVals[i]) {
lastDebounceTime[i] = millis();
}
if ((millis() - lastDebounceTime[i]) > debounceDelay) {
vals[i] = reading;
}
lastVals[i] = reading;
if (vals[i] == HIGH)
{
Keyboard.print(ch[i]);
}
}
delay(100);
}