// Definición de pines para el semáforo 1
const int rojo1 = 2;
const int amarillo1 = 3;
const int verde1 = 4;
// Definición de pines para el semáforo 2
const int rojo2 = 5;
const int amarillo2 = 6;
const int verde2 = 7;
// Definición de pines para el semáforo 3
const int rojo3 = 8;
const int amarillo3 = 9;
const int verde3 = 10;
// Definición de pines para el semáforo 4
const int rojo4 = 11;
const int amarillo4 = 12;
const int verde4 = 13;
void setup() {
pinMode(rojo1, OUTPUT);
pinMode(amarillo1, OUTPUT);
pinMode(verde1, OUTPUT);
pinMode(rojo2, OUTPUT);
pinMode(amarillo2, OUTPUT);
pinMode(verde2, OUTPUT);
pinMode(rojo3, OUTPUT);
pinMode(amarillo3, OUTPUT);
pinMode(verde3, OUTPUT);
pinMode(rojo4, OUTPUT);
pinMode(amarillo4, OUTPUT);
pinMode(verde4, OUTPUT);
}
void loop() {
// Semáforos 1 y 3 en verde, Semáforos 2 y 4 en rojo
digitalWrite(verde1, HIGH);
digitalWrite(verde3, HIGH);
digitalWrite(rojo2, HIGH);
digitalWrite(rojo4, HIGH);
delay(5000);
// Cambio a amarillo en Semáforos 1 y 3
digitalWrite(verde1, LOW);
digitalWrite(verde3, LOW);
digitalWrite(amarillo1, HIGH);
digitalWrite(amarillo3, HIGH);
delay(2000);
digitalWrite(amarillo1, LOW);
digitalWrite(amarillo3, LOW);
// Semáforos 1 y 3 en rojo, Semáforos 2 y 4 en verde
digitalWrite(rojo1, HIGH);
digitalWrite(rojo3, HIGH);
digitalWrite(rojo2, LOW);
digitalWrite(rojo4, LOW);
digitalWrite(verde2, HIGH);
digitalWrite(verde4, HIGH);
delay(5000);
// Cambio a amarillo en Semáforos 2 y 4
digitalWrite(verde2, LOW);
digitalWrite(verde4, LOW);
digitalWrite(amarillo2, HIGH);
digitalWrite(amarillo4, HIGH);
delay(2000);
digitalWrite(amarillo2, LOW);
digitalWrite(amarillo4, LOW);
// Todos los semáforos en rojo antes de cambiar
digitalWrite(rojo1, LOW);
digitalWrite(rojo3, LOW);
digitalWrite(rojo2, HIGH);
digitalWrite(rojo4, HIGH);
}