Arduino - semaforos doble via con doble cruce peatonal y 2 pulsadores

 
Vista:
sin imagen de perfil

semaforos doble via con doble cruce peatonal y 2 pulsadores

Publicado por alan (1 intervención) el 24/02/2024 15:14:13
hola buenos dias necesito ayudaaa,,
tengo que programar en arduino ide un codigo de semaforo doble via con 2 cruces peatonales y 2 pulsadores para cada cruce peatonal si uno de los pulsadores es pulsado tiene que encender en verde para el peaton y rojo para el semaforo de via mientras los otros 2 semaforos siguen su secuencia normal que seria verde para via y rojo para peaton.... si alguien me podria aportar el codigo seria de gran ayuda ya que si no logro aprobar la materia me van a hechar de mi casa :(
este codigo que voy a dejar es la secuencia de los semaforos pero no se como agregarle el resto para los pulsadores,,,,,, si alguien me pasa el codigo completo y probado seria de gran ayuda,,, gracias por la atencion.. :D


int Semaforo_Rojo_1 = 12;
int Semaforo_Amarillo_1 = 11;
int Semaforo_Verde_1 = 10;


int Peatonal_Rojo_1 = 9;
int Peatonal_Verde_1 = 8;



int Semaforo_Rojo_2 = 7;
int Semaforo_Amarillo_2 = 6;
int Semaforo_Verde_2 = 5;


int Peatonal_Rojo_2 = 4;
int Peatonal_Verde_2 = 3;


void setup() {
pinMode(Semaforo_Rojo_1, OUTPUT);
pinMode(Semaforo_Amarillo_1, OUTPUT);
pinMode(Semaforo_Verde_1, OUTPUT);
pinMode(Peatonal_Rojo_1, OUTPUT);
pinMode(Peatonal_Verde_1, OUTPUT);
pinMode(Semaforo_Rojo_2, OUTPUT);
pinMode(Semaforo_Amarillo_2, OUTPUT);
pinMode(Semaforo_Verde_2, OUTPUT);
pinMode(Peatonal_Rojo_2, OUTPUT);
pinMode(Peatonal_Verde_2, OUTPUT);
}

void loop() {
digitalWrite(Semaforo_Verde_1, HIGH);
digitalWrite(Peatonal_Rojo_1, HIGH);
digitalWrite(Semaforo_Rojo_2, HIGH);
digitalWrite(Peatonal_Verde_2, HIGH);
delay(3000);
digitalWrite(Semaforo_Amarillo_2, HIGH);
digitalWrite(Semaforo_Verde_1, LOW);
digitalWrite(Semaforo_Amarillo_1, HIGH);
delay(1000);
digitalWrite(Semaforo_Amarillo_2, LOW);

digitalWrite(Semaforo_Amarillo_1, LOW);
digitalWrite(Peatonal_Rojo_1, LOW);
digitalWrite(Semaforo_Rojo_2, LOW);
digitalWrite(Peatonal_Verde_2, LOW);

digitalWrite(Semaforo_Rojo_1, HIGH);
digitalWrite(Peatonal_Verde_1, HIGH);
digitalWrite(Semaforo_Verde_2, HIGH);
digitalWrite(Peatonal_Rojo_2, HIGH);
delay(3000);
digitalWrite(Semaforo_Amarillo_2, HIGH);
digitalWrite(Semaforo_Amarillo_1, HIGH);
digitalWrite(Semaforo_Rojo_1, LOW);
digitalWrite(Semaforo_Verde_2, LOW);
delay(1000);
digitalWrite(Semaforo_Amarillo_2, LOW);
digitalWrite(Semaforo_Amarillo_1, LOW);

digitalWrite(Semaforo_Rojo_1, LOW);
digitalWrite(Peatonal_Verde_1, LOW);
digitalWrite(Peatonal_Rojo_2, LOW);
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder