byte estado_semaforo;
byte estado_semaforo1;
//#define estado1
//#define estado2
//#define estado3
int LedVermelho1=13;
int LedAmarelo1=12;
int LedVerde1=11;
int LedPeaoVermelho1=10;
int LedPeaoVerde1=9;
int LedVermelho2=8;
int LedAmarelo2=7;
int LedVerde2=6;
int LedPeaoVermelho2=5;
int LedPeaoVerde2=4;
int Botao1=3;
int Botao2=2;
int Buzzer1=1;
int Buzzer2=0;
unsigned long espera;
long tempo_ant ,tempo_act , tempo_req;
void estado(){
if (estado==1){
digitalWrite(11, HIGH); // lED DOS CARROS VIA1 VERDE ON;
digitalWrite(10, HIGH); // LED PEOES VIA 1 VERMELHO ON;
digitalWrite(12, LOW); //LED DOS CARROS VIA1 AMARELO OFF;
digitalWrite(13, LOW); //LED DOS CARROS VIA1 VERMELHO OFF;
digitalWrite(9, LOW); //LED PEOES VIA1 VERDE OFF;
digitalWrite(1, LOW); //BUZZER1 OFF;
}
else if (estado==2){
digitalWrite(11, LOW); //LED DOS CARROS VIA1 VERDE OFF;
digitalWrite(12, HIGH); //LED DOS CARROS VIA1 AMARELO ON;
digitalWrite(13, LOW); //LED DOS CARROS VIA1 VERMELHO OFF;
digitalWrite(10, HIGH); //LED PEOES VIA1 VERMELHO ON;
digitalWrite(9, LOW); //LED PEOES VIA1 VERDE OFF;
digitalWrite(1, LOW); //BUZZER1 OFF;
}
else if (estado==3) {
digitalWrite(13, HIGH); //LED DOS CARROS VIA1 VERMELHO ON;
digitalWrite(11, LOW); //LED DOS CARROS VIA1 VERDE OFF;
digitalWrite(12, LOW); //LED DOS CARROS VIA1 AMARELO OFF;
digitalWrite(9, HIGH); //LED PEOES VIA1 VERDE ON;
digitalWrite(10, LOW); //LED PEOES VIA1 VERMELHO OFF;
digitalWrite(1, HIGH); //BUZZER1 ON;
digitalWrite(0, LOW); //BUZZER2 OFF;
}
}
void estado1 (){
if (estado1==1){
digitalWrite(8, HIGH); // lED DOS CARROS VIA2 VERMELHO ON;
digitalWrite(4, HIGH); // LED PEOES VIA2 VERDE ON;
digitalWrite(7, LOW); //LED DOS CARROS VIA2 AMARELO OFF;
digitalWrite(6, LOW); //LED DOS CARROS VIA2 VERDE OFF;
digitalWrite(5, LOW); //LED PEOES VIA2 VERMELHO OFF;
}
else if (estado1==2){
digitalWrite(7, LOW); //LED DOS CARROS VIA2 AMARELO OFF;
digitalWrite(7, LOW); //LED DOS CARROS VIA2 AMARELO OFF;
digitalWrite(6, HIGH); //LED DOS CARROS VIA2 VERDE ON;
digitalWrite(8, LOW); //LED DOS CARROS VIA2 VERMELHO OFF;
digitalWrite(5, HIGH); //LED PEOES VIA2 VERMELHO ON;
digitalWrite(4, LOW); //LED PEOES VIA2 VERDE OFF;
digitalWrite(0, LOW); //BUZZER2 OFF;
}
else if (estado1==3) {
digitalWrite(7, HIGH); //LED DOS CARROS VIA2 AMARELO ON;
digitalWrite(6, LOW); //LED DOS CARROS VIA2 VERDE OFF;
digitalWrite(8, LOW); //LED DOS CARROS VIA2 VERMELHO OFF;
digitalWrite(5, HIGH); //LED PEOES VIA2 VERMELHO ON;
digitalWrite(4, LOW); //LED PEOES VIA2 VERDE OFF;
digitalWrite(0, HIGH); //BUZZER2 OFF;
}
}
void setup()
{
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(10, OUTPUT);
pinMode(9, OUTPUT);
pinMode(8, OUTPUT);
pinMode(7, OUTPUT);
pinMode(6, OUTPUT);
pinMode(5, OUTPUT);
pinMode(4, OUTPUT);
pinMode(3, INPUT);
pinMode(2, INPUT);
pinMode(1, OUTPUT);
pinMode(0, OUTPUT);
espera = millis();
Serial.begin(152000);
estado_semaforo=estado1;
estado_semafor2=estado4;
tempo_ant=millis();
tempo_req=2000;
estado1 = true;
estado4 = true;
}