int LED_VERDE = 10;
int LED_AMARILLO = 9;
int LED_ROJO = 8;
int PULSADOR = 2;
int t_verde = 5000;
int t_amarillo = 2000;
int t_rojo = 5000;
int dt = 500;
void setup() {
// put your setup code here, to run once:
pinMode(LED_VERDE, OUTPUT);
pinMode(LED_AMARILLO, OUTPUT);
pinMode(LED_ROJO, OUTPUT);
pinMode(PULSADOR, INPUT_PULLUP);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(LED_VERDE, HIGH);
for (int i = 0; i < (t_verde/10); i++) {
if (digitalRead(PULSADOR) == LOW) {
secuenciaPeatonal();
return;
}
delay(10);
}
digitalWrite(LED_VERDE, LOW);
digitalWrite(LED_AMARILLO, HIGH);
delay(t_amarillo);
digitalWrite(LED_AMARILLO, LOW);
digitalWrite(LED_ROJO, HIGH);
delay(t_rojo);
digitalWrite(LED_ROJO, LOW);
}
void secuenciaPeatonal() {
for (int x = 0; x < 3; x++) {
digitalWrite(LED_VERDE, LOW);
delay(dt);
digitalWrite(LED_VERDE, HIGH);
delay(dt);
}
digitalWrite(LED_VERDE, LOW);
digitalWrite(LED_ROJO, HIGH);
delay(t_rojo);
digitalWrite(LED_ROJO, LOW);
}