Paso 4: Código de Arduino
Al principio, conecté los cables a la Arduino como esta:
-pin 2: sw1
-pin 3: sw2
-pin 4: sw3
-pin 5: sw4
-pin 6: sw5
-pin 7: sw6
-pin 8: sw7
-pin 9: rasgueo hacia arriba
-pin 10: rasgueo hacia abajo
-pin 11: trémolo
-pin 12: botón para el escape
-pin 13: botón para el estrellato
(sw1 está el primer botón de traste, sw7 es el séptimo botón de traste, pero sólo usaremos sw1-sw5)
(Si quería hacer la estrella con el acelerómetro, que habría conectado el pin X, Y y Z a las entradas analógicas del arduino)
En primer lugar, tuve que inicializar el puerto serie y configurar los pines como entradas:
void setup() {}
Serial.Begin(9600); Inicializar la clase Serial con 9600 baudios/s
para (int i = 2; i < = 13; i ++) {}
pinMode (, entrada); Configurar los pines como entradas
}
}
En el lazo, leer las entradas y me imprima el puerto serie:
void loop() {}
mientras (!. Serial.Available());
para (int i = 2; i < = 13; i ++) {}
Serial.Print(digitalRead(i));
Serial.Print(';');
}
Serial.Print('\n');
Delay(1);
Los valores de entrada se envían en una línea, separadas con un ';'. Por lo que si pulsa un botón, o rasgueo hacia abajo, sólo el valor de ese índice se convierte en 1, lo contrario es 0. En Java, un buffer se llena cuando se recibe un '\n' nuevo operador de la línea. El tiempo (!. Serial.Available()); línea de ayuda para enviar sólo los datos después de que el programa se inició.
El un retraso de milisegundos es necesario para transferir los datos, sin que tengo líneas extrañas en el monitor serie.