const int ledCarroVerde = 9;
const int ledCarroVermelho = 11;
const int ledCarroAmarelo = 10;
const int ledPedestreVerde = 7;
const int ledPedestreVermelho = 8;
const int buzzerPin = 12;
const int botaoPin = 13;
void setup() {
pinMode(ledCarroVerde, OUTPUT);
pinMode(ledCarroAmarelo, OUTPUT);
pinMode(ledCarroVermelho, OUTPUT);
pinMode(ledPedestreVerde, OUTPUT);
pinMode(ledPedestreVermelho, OUTPUT);
pinMode(buzzerPin, OUTPUT);
pinMode(botaoPin, INPUT_PULLUP);
digitalWrite(ledCarroVerde, HIGH);
digitalWrite(ledPedestreVermelho, HIGH);
}
void loop() {
if (digitalRead(botaoPin) == LOW) {
delay(500);
iniciarTravessia();
}
}
void iniciarTravessia() {
digitalWrite(ledCarroVerde, LOW);
digitalWrite(ledCarroAmarelo, HIGH);
delay(2000);
digitalWrite(ledCarroAmarelo, LOW);
digitalWrite(ledCarroVermelho, HIGH);
delay(1000);
digitalWrite(ledPedestreVermelho, LOW);
digitalWrite(ledPedestreVerde, HIGH);
delay(5000);
for (int i = 0; i < 5; i++) {
digitalWrite(ledPedestreVerde, LOW);
noTone(buzzerPin);
delay(400);
digitalWrite(ledPedestreVerde, HIGH);
tone(buzzerPin, 1000);
delay(400);
}
noTone(buzzerPin);
digitalWrite(ledPedestreVerde, LOW);
digitalWrite(ledPedestreVermelho, HIGH);
delay(1000);
digitalWrite(ledCarroVermelho, LOW);
digitalWrite(ledCarroVerde, HIGH);
}