const int ledVerde = 2;
const int ledAmarillo = 3;
const int ledRojo = 4; // se definen los nombres de los pines aqui
const int boton = 5;
const int buzzer = 6;
bool botonPresionado = false;
void setup() {
pinMode(ledVerde, OUTPUT);
pinMode(ledAmarillo, OUTPUT);
pinMode(ledRojo, OUTPUT); //se establece despues de cambiar el nombre que sera cada pin si salida o entrada
pinMode(buzzer, OUTPUT);
pinMode(boton, INPUT_PULLUP);
digitalWrite(ledVerde, HIGH);
digitalWrite(ledAmarillo, LOW);
digitalWrite(ledRojo, LOW); // aui hace que todos los leds esten apagados menos el verde
digitalWrite(buzzer, LOW);
}
void loop() {
if (digitalRead(boton) == LOW && !botonPresionado) {. // aqui señala lo que pasara cuando el boton este precionado
botonPresionado = true;
digitalWrite(ledVerde, LOW);
digitalWrite(ledAmarillo, HIGH); // apaga el led verde y enciende el amarillo 3000 ms
delay(3000);
digitalWrite(ledAmarillo, LOW);
digitalWrite(ledRojo, HIGH); // apaga el boton amarillo y enciende el rojo
unsigned long startTime = millis();
while (millis() - startTime < 5000) { // hace que el led rojo permanezca 5000 ms y hace que el buzer haga sonido cada 250 ms
digitalWrite(buzzer, HIGH);
delay(250);
digitalWrite(buzzer, LOW);
delay(250);
}
digitalWrite(ledRojo, LOW);
digitalWrite(buzzer, LOW); // apaga el led rojo y hace que despues de dos segundos prenda el verde
delay(2000);
digitalWrite(ledVerde, HIGH);
while (digitalRead(boton) == LOW);
botonPresionado = false;
} else if (digitalRead(boton) == HIGH && !botonPresionado) {
digitalWrite(buzzer, LOW);
}
}