sábado, 22 de septiembre de 2012

El coche fantástico

Este tutorial, se suele llamar así por el coche de la famosa serie "El coche fantástico". Podemos ver este tutorial cuando se le ve al coche la parte delantera. Vemos unas luces que van de un lado a otro.

También, este efecto se puede llamar "knight rider".

Nosotros, vamos a realizarlo de un modo más "humilde".

Necesitamos:
- Arduino.
- 5 LEDs.
- 5 Resistencias de 1K.
- Cable.
- Cable USB.

Vamos a ir preparando el montaje.

 Lo que va a hacer este tutorial, es que los 5 LED sigan una secuencia concreta:


Ahora bien, yo he optado por hacerlo con LEDs rojos, ya que se asemeja más a KITT (El coche fantástico), pero lo podemos hacer con cualquier color, e incluso mezclándolos.








El código, es bastante sencillo, es extremadamente parecido al de Parpadeo. Solo que hemos variado unos pequeños aspectos y ahora es una sucesión de LEDs.



int LED1 = 13; //LED 1//
int LED2 = 12; //LED 2//
int LED3 = 11; //LED 3//
int LED4 = 10; //LED 4//
int LED5 = 9; //LED 5//
int tiempo = 50; //Tiempo de retraso//

void setup(){
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(LED3, OUTPUT);
  pinMode(LED4, OUTPUT);
  pinMode(LED5, OUTPUT);
  //Hemos declarado todos los pines empleados para los LED como salidas digitales//
}

void loop(){
  //Ahora vamos a hacer la secuencia//
  digitalWrite(LED1, HIGH);
  delay(tiempo);
  digitalWrite(LED1, LOW);
  delay(tiempo);
  digitalWrite(LED2, HIGH);
  delay(tiempo);
  digitalWrite(LED2, LOW);
  delay(tiempo);
  digitalWrite(LED3, HIGH);
  delay(tiempo);
  digitalWrite(LED3, LOW);
  delay(tiempo);
  digitalWrite(LED4, HIGH);
  delay(tiempo);
  digitalWrite(LED4, LOW);
  delay(tiempo);
  digitalWrite(LED5, HIGH);
  delay(tiempo);
  digitalWrite(LED5, LOW);
  delay(tiempo);
  digitalWrite(LED4, HIGH);
  delay(tiempo);
  digitalWrite(LED4, LOW);
  delay(tiempo);
  digitalWrite(LED3, HIGH);
  delay(tiempo);
  digitalWrite(LED3, LOW);
  delay(tiempo);
  digitalWrite(LED2, HIGH);
  delay(tiempo);
  digitalWrite(LED2, LOW);
  delay(tiempo);
}


Aquí os dejo con el resultado.

No hay comentarios:

Publicar un comentario