#include <Servo.h>
Servo servoMotor;
const int ledRojoPin = 10;
const int ledVerdePin = 11;
const int botonPin = 7;
const int BuzzerPin = 3;
int estadoAnterior = HIGH;
bool semaforoActivo = false;
void setup() {
servoMotor.attach(9);
pinMode(ledRojoPin,OUTPUT);
pinMode(ledVerdePin, OUTPUT);
pinMode(botonPin, INPUT_PULLUP);
pinMode(BuzzerPin, OUTPUT);
}
void loop() {
int estadoBoton = digitalRead(botonPin);
if(estadoBoton == LOW && estadoAnterior == HIGH){
semaforoActivo = !semaforoActivo;
if (semaforoActivo) {
servoMotor.write(0);
digitalWrite(ledVerdePin, HIGH);
digitalWrite(ledRojoPin, LOW);
tone(BuzzerPin, 200,2000);
delay(100);
} else{
servoMotor.write(90);
digitalWrite(ledVerdePin, LOW);
digitalWrite(ledRojoPin, HIGH);
}
}
}