Arduino: Diversión con 8 LEDs

Siguiendo la tónica del anterior, seguimos con el siguiente ejercicio propuesto por oomlout: http://ardx.org/CIRC02

Hemos colocado 8 LEDs (con sus respectivas resistencias de 330Ω) y las hemos conectado a los pines 2 a 9 de nuestra Arduino. Tras programar un poco, aquí vemos el resultado:


Y aquí el código que he utilizado para pasar de una LED a la siguiente:

/*
 * Secuencias de LEDs
 *
 */

// Array de LEDs >> Indico en que pin va cada una de las 8 LEDS.
int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9}; 
// Por ejemplo, la LED 2 esta en el pin 4, o la LED 0 esta en el pin 2.

void setup()
{
  for(int i = 0; i < 8; i++) 
    {
      pinMode(ledPins[i], OUTPUT); // recorro los pines de las LED y los cambio 
                                   // a SALIDA
    }
}

void loop()
{
  // La siguiente funcion enciende una LED tras otra y luego va apagando
  unaTrasOtra();
}

/*
 * unaTrasOtra() - Enciende una LED, se detiene un tiempo 
 * "retardo" y enciende la siguiente LED. Cuando esten todas 
 * hara lo mismo pero apagandolas.
 *
 */
void unaTrasOtra()
{
  int retardo = 100; // este es el tiempo de pausa entre LEDs
  
  for(int i = 0; i < 8; i++)
    {
      digitalWrite(ledPins[i], HIGH); // Enciendo LED
      delay(retardo); // Espero
    }
  for(int i = 0; i < 8; i++)
    {
      digitalWrite(ledPins[i], LOW); // Apago LED
      delay(retardo); // Espero
    }
}

En el enlace que he indicado al principio, vemos más animaciones. Jugando un poco podemos crear muchas más.

Comentarios

Entradas populares de este blog

Cómo configurar dos PLCs

Configurar correo IMAP de mundo-R en Android

Arduino y Processing 3: Mostrar los datos de dos sensores al mismo tiempo