// Declarando pines
int redLED = 15;
int yellowLED = 2;
int greenLED = 4;
// Función que se ejecuta solo una vez
void setup() {
// Declarando pines de salida
pinMode(redLED, OUTPUT);
pinMode(yellowLED, OUTPUT);
pinMode(greenLED, OUTPUT);
}
// Función que se ejecuta repetidamente
void loop() {
// Encender luz roja (detenerse)
digitalWrite(redLED, HIGH);
digitalWrite(yellowLED, LOW);
digitalWrite(greenLED, LOW);
delay(2000); // Esperar 2 segundos
// Encender luz amarilla (prepararse para avanzar)
digitalWrite(redLED, LOW);
digitalWrite(yellowLED, HIGH);
digitalWrite(greenLED, LOW);
delay(1000); // Esperar 1 segundo
// Encender luz verde (avanzar)
digitalWrite(redLED, LOW);
digitalWrite(yellowLED, LOW);
digitalWrite(greenLED, HIGH);
delay(2000); // Esperar 2 segundos
// Parpadear luz verde antes de volver al rojo (aviso para detenerse)
digitalWrite(greenLED, LOW);
delay(500); // Esperar medio segundo
digitalWrite(greenLED, HIGH);
delay(500); // Esperar medio segundo
// Volver al rojo
digitalWrite(redLED, HIGH);
digitalWrite(yellowLED, LOW);
digitalWrite(greenLED, LOW);
delay(2000); // Esperar 2 segundos
}