Contenido del curso

Actividad 7

 

Tres LEDs intermitentes con secuencia repetitiva

En la siguiente actividad emplearemos un pulsador y tres LEDs conectados de la forma que se muestra en el montaje de la figura. Con cada pulsación, el programa deberá iniciar una secuencia de encendido y apagado de los leds de forma ordenada, con iguales tiempos de espera entre LEDs, aplicando el siguiente orden:

  • Orden encendido: verde, amarillo, rojo.

  • Orden apagado: rojo, amarillo, verde.

La secuencia anterior se repetirá un número determinado de veces por medio de un contador que definiremos mediante la sentencia “for”.


 
const int led_rojo = 7;   // Definimos el pin del led rojo
const int led_amarillo = 8;  // Definimos el pin del led amarillo
const int led_verde = 9;  // Definimos el pin del led verde
const int pulsador = 10;  // Definimos el pin del pulsador
int tiempo = 500;         // Definimos variable para guardar los tiempos

void setup() {
 
// Inicializamos los pines de los LEDcomo salida
  pinMode(led_rojo, OUTPUT);
  pinMode(led_amarillo, OUTPUT);
  pinMode(led_verde, OUTPUT);
  // Definimos el pin del pulsador
  pinMode(pulsador, INPUT);

}

void loop() {
 
// Si se pulsa el pulsador se inicia la secuencia
  if (digitalRead(pulsador) == HIGH) {
    // Repetir la secuencia 5 veces
    for (int i = 0; i < 5; i++) {
      digitalWrite(led_rojo, HIGH);     // Encender led rojo
      delay(tiempo);                    // Esperar el valor "tiempo"
      digitalWrite(led_amarillo, HIGH); // Encender led amarillo
      delay(tiempo);                    // Esperar el valor "tiempo"
      digitalWrite(led_verde, HIGH);    // Encender led verde
      delay(tiempo);                    // Esperar el valor "tiempo"
      digitalWrite(led_rojo, LOW);      // Apagar led rojo
      delay(tiempo);                    // Esperar el valor "tiempo"
      digitalWrite(led_amarillo, LOW);  // Apagar led amarillo
      delay(tiempo);                    // Esperar el valor "tiempo"
      digitalWrite(led_verde, LOW);     // Apagar led verde
      delay(tiempo);                    // Esperar el valor "tiempo"
   
    }
  }
}


Puedes descargar la solución pinchando en el siguiente icono:


Vistas
15 Número de vistas
15 Vistas de miembros
0 Vistas públicas
Acciones
0 Gustos
0 No me gusta
0 Comentarios
Compartir en redes sociales
Compartir enlace
Compartir por correo

Por favor iniciar sesión para compartir esto webpage por correo.