Semaforo de Pedestre

Fonte: Wikiversidade

Semaforo de Pedestre completo

void setup() {

   pinMode( 13, OUTPUT); // Vermelho Carro
   
   pinMode( 12, OUTPUT); // Amarelo Carro
   
   pinMode( 11, OUTPUT); // Verde Carro
   
   pinMode( 10, OUTPUT); // Vermelho Pedestre
   
   pinMode(  9, OUTPUT); // Verde Pedestre
   
   pinMode(  3, INPUT); // Botao do Pedestre
   
   digitalWrite(13 , 0); // Vermelho
   digitalWrite(12 , 0); // Amarelo
   
   digitalWrite(11 , 1); // Verde para o carro
   
   digitalWrite(10 , 1); // Vermelho para pedestre
   
   digitalWrite( 9 , 0); // Verde pedestre

}


void loop() {

   digitalWrite(13 , 0); // Vermelho
   
   digitalWrite(12 , 0); // Amarelo
   
   digitalWrite(11 , 1); // Verde para o carro
   
   digitalWrite(10 , 1); // Vermelho para pedestre
   
   digitalWrite( 9 , 0); // Verde pedestre
   
   if ( digitalRead(3) == 1 )
       {
       
       digitalWrite(12 , 1); // Amarelo carro
       
       digitalWrite(11 , 0);
      
       delay(5000);
      
       digitalWrite(13 , 1); // Vermelho carro
      
       digitalWrite(12 , 0);
       digitalWrite(10 , 0); // Vermelho pedestre

       digitalWrite( 9 , 1); // Verde pedestre
       delay(15000);
       digitalWrite( 9 , 0); // Verde pedestre
       for ( int contador =1 ; contador<=10 ; contador++ ) {
           digitalWrite(10 , 1); // Vermelho pedestre
           delay(200);
           digitalWrite(10 , 0); // Vermelho pedestre
           delay(200);
           }
       }

}