void setup() {
//semaforo 1
pinMode(13, OUTPUT); //vermelho
pinMode(12, OUTPUT); //amarelo
pinMode(11, OUTPUT); //verde
//SEMAFORO 2
pinMode(10, OUTPUT); //vermelho
pinMode(9, OUTPUT); //amarelo
pinMode(8, OUTPUT); //verde
//SEMAFORO 3
pinMode(7, OUTPUT); //vermelho
pinMode(6, OUTPUT); //amarelo
pinMode(5, OUTPUT); //verde
//SEMAFORO 4
pinMode(4, OUTPUT); //vermelho
pinMode(3, OUTPUT); //amarelo
pinMode(2, OUTPUT); //verde
Serial.begin(9600);
}
int conta = 0; //CRIA VARIÁVEL INTEIRO
void loop() {
digitalWrite(11, HIGH); // SEMAFORO 1 = VERDE ON
digitalWrite(10, HIGH); // SEMAFORO 2 = VERMELHO ON
digitalWrite(7, HIGH); // SEMAFORO 3 = VERMELHO ON
digitalWrite(4, HIGH); // SEMAFORO 4 = VERMELHO ON
switch (conta) {
case 0:
//SEMAFORO 1
digitalWrite(13, LOW); //VERMELHO OFF
delay(3000);
digitalWrite(11, LOW); //VERDE OFF
digitalWrite(12, HIGH); //AMARELO ON
delay(1000);
//
digitalWrite(12, LOW); //AMARELO OFF
digitalWrite(13, HIGH); //VEMELHO ON
//
conta ++;
Serial.println(conta);
case 1:
//SEMAFORO 2
digitalWrite(10, LOW); //VERMELHO OFF
digitalWrite(8, HIGH); //VERDE ON
delay(3000);
//
digitalWrite(8, LOW); //VERDE OFF
digitalWrite(9, HIGH); //AMARELO ON
delay(1000);
//
digitalWrite(9, LOW); //AMARELO OFF
digitalWrite(10, HIGH); //VERMELHO ON
conta ++;
Serial.println(conta);
case 2:
//SEMAFORO 3
digitalWrite(7, LOW); //VERMELHO OFF
digitalWrite(5, HIGH); //VERDE ON
delay(3000);
//
digitalWrite(5, LOW); //VERDE OFF
digitalWrite(6, HIGH); //AMARELO ON
delay(1000);
//
digitalWrite(6, LOW); //AMARELO OFF
digitalWrite(7, HIGH); //VERMELHO ON
conta ++;
Serial.println(conta);
case 3:
//SEMAFORO 3
digitalWrite(4, LOW); //VERMELHO OFF
digitalWrite(2, HIGH); //VERDE ON
delay(3000);
//
digitalWrite(2, LOW); //VERDE OFF
digitalWrite(3, HIGH); //AMARELO ON
delay(1000);
//
digitalWrite(3, LOW); //AMARELO OFF
digitalWrite(4, HIGH); //VERMELHO ON
if (conta >= 3) {conta = 0;}
break;}
}