Lecturas digitales

Si con el Shield de Prácticas y una Arduino UNO has hecho algunas pruebas con el programa Ardulab (desarrollado por Complubot) ya debes tener claro que algunos pines son salidas y otros funcionan como entradas. En el caso de nuestro Shield de Prácticas tanto las salidas como las entradas son fijas, es decir, en este Shield no se pueden cambiar pero en un poco de tiempo, cuando ya trabajes sin el Shield podrás utilizar cada pin como prefieras o como mejor se ajuste a tu proyecto.

En esta ocasión vamos a utilizar uno de los pines que en el Shield está configurado como una entrada: un pulsador, en concreto el asociado al pin número 12 y un pin asociado a un LED, por ejemplo, el pin 4 que corresponde al LED amarillo.

Comenzamos creando las variables que contendrán los números de los pines:

1
2
int pulsador = 12;
int led= 4;

En el setup() los configuraremos como entradas o como salidas, según corresponda:

1
2
3
4
5
void setup()
{
pinMode(pulsador, INPUT);
pinMode(led, OUTPUT);
}

Ahora vamos al loop() en el que utilizaremos un comando condicional, el if, para que el LED amarillo se encienda si pulsamos el pulsador y se apague si no lo accionamos.

El comando if tiene una sintaxis así:

1
2
3
4
5
6
7
8
9
10
11
void loop()
{
  if (condicion)
  {
  // código que se ejecuta si se cumple la condición
  }
  else
  {
  // código que se ejecuta si no se cumple la condición
  }
}

Por lo que para adaptarlo a nuestro ejemplo lo deberemos dejar de la siguiente manera. ATENCIÓN a la condición:

1
2
3
4
5
6
7
8
9
10
11
void loop()
{
  if (digitalRead(pulsador) == HIGH)
  {
    digitalWrite(led, HIGH);
  }
  else
  {
    digitalWrite(led, LOW);
  }
}

Hemos visto un comando más digitalRead(), que sirve para hacer una lectura de un pin digital, nos devolverá un HIGH o un LOW según el pin esté activado o no.

Os animo a que probéis a modificar el código añadiendo más ledes y haciendo que al pulsar el botón unos se enciendan y otros se apaguen.


Si este tutorial te ha sido de utilidad puedes considerar hacerme un donativo, por pequeño que sea estarás contribuyendo a que siga con esta labor.


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *