Práctica 4
Vamos a utilizar el teclado para enviar órdenes a Arduino, mediante la misma conexión serie del monitor que usamos para ver por pantalla.
La instrucción para que arduino lea una tecla del ordenador es:
Serial.read();
Siempre deberemos guardar la tecla capturada en una variable, por ejemplo "tecla", quedaría así:
tecla = Serial.read();
Ahora dentro de tecla tendríamos la tecla que se ha pulsado y con ese valor podemos hacer cosas.
Una cosa importante a tener en cuenta es que tecla NO es una variable como las que hemos usado hasta ahora, no va a contener un número entero (int), sino que va a contener un caracter. Para eso en la declaración de variables, (al principio del programa) deberemos declararla de la siguiente forma:
char tecla;
En la práctica tenemos que conseguir que Arduino encienda alguno de los 3 leds que vamos a conectarle según las teclas que pulsemos. Si pulsamos la tecla "1", debe encenderse un solo led, si pulsamos la tecla "2" se deberán encender 2 leds y si pulsamos la tecla 3 deberán encenderse los 3 leds. (puedes modificar este funcionamiento si lo deseas).
Dentro de loop, tendremos que capturar la tecla pulsada y según su valor haremos una cosa u otra. Para ello usaremos las órdenes if y else que vimos en las prácticas anteriores. La forma de hacer las comparaciones serían:
if (tecla == '1')
{
acciones;
}
if (tecla == '2')
{
acciones;
}
.....
Sólo nos queda una cosa, debemos esperar hasta que se pulse una tecla, eso se lo decimos a Arduino, introduciendo un if antes de Serial.read.
Usamos la orden Serial.available, que se encarga de mirar si se ha pulsado una tecla.
Con lo que la orden competa debe quedar así:
if( Serial.available() ) tecla = Serial.read();
Combina todo esto para realizar la práctica