// Definir los pines de los LEDs
int pinVerde = 2;
int pinAmarillo = 3;
int pinRojo = 4;
// Tiempos de espera para cada estado (en milisegundos)
int tiempoVerde = 5000; // 5 segundos (luz verde fija)
int tiempoAmarillo = 1000; // 1 segundo (luz amarilla fija)
int tiempoRojo = 5000; // 5 segundos (luz roja fija)
int tiempoParpadeoVerde = 500; // 0.5 segundos (luz verde parpadeante)
void setup() {
// Configurar los pines de los LEDs como salidas
pinMode(pinVerde, OUTPUT);
pinMode(pinAmarillo, OUTPUT);
pinMode(pinRojo, OUTPUT);
}
void loop() {
// Mostrar luz verde fija (5 segundos)
digitalWrite(pinVerde, HIGH);
digitalWrite(pinAmarillo, LOW);
digitalWrite(pinRojo, LOW);
delay(tiempoVerde);
// Mostrar luz verde parpadeante (2 segundos)
for (int i = 0; i < 4; i++) {
digitalWrite(pinVerde, HIGH);
delay(tiempoParpadeoVerde);
digitalWrite(pinVerde, LOW);
delay(tiempoParpadeoVerde);
}
// Mostrar luz amarilla fija (1 segundo)
digitalWrite(pinVerde, LOW);
digitalWrite(pinAmarillo, HIGH);
delay(tiempoAmarillo);
// Mostrar luz roja (5 segundos)
digitalWrite(pinAmarillo, LOW);
digitalWrite(pinRojo, HIGH);
delay(tiempoRojo);
}