#define tecla 2
#define tecla1 21
#define led 13
#define led1 12
#define led2 14
// const int tecla = 2;
void setup() {
  
   Serial.begin (9600);

  pinMode(tecla, INPUT);
  pinMode(tecla1, INPUT);
  pinMode(led, OUTPUT);
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);

} 
void Incremento(unsigned char Contador); //protótipo da função.

signed char ucContador = -1;
  
void Incremento(unsigned char Contador)
{ 
     switch (ucContador)
     {
      case 0: 
      
      digitalWrite(led,1);
      Serial.println ("led ligado");

      break;
      
      case 1: 
    
      digitalWrite(led1, HIGH);
      Serial.println ("led1,ligado");

      break;
      
      case 2: 
    
      digitalWrite(led2, HIGH);
      Serial.println ("led2,ligado");

      break;
      
      case 3: 
    
      digitalWrite(led2, LOW);
      Serial.println ("led2,desligado");

      break;
      case 4: 
    
      digitalWrite(led1, LOW);
      Serial.println ("led1,desligado");

      break;
      case 5: 
    
      digitalWrite(led, LOW);
      Serial.println ("led,desligado");
      ucContador = -1;
      Serial.println (ucContador);

      break;
     }
}

void loop()
{
  unsigned char FlagAux=1;

 while(digitalRead (ucContador<2))
 {
    if(digitalRead(tecla)==1 && FlagAux==1)
    {

      
      Incremento(++ucContador);

         
      Serial.println (ucContador);
      FlagAux=0;
      delay(300); 
    }
    if(digitalRead(tecla)==0 && FlagAux==0)
    {
    FlagAux=1;
    delay(300);
    }
    while(digitalRead (ucContador>=2))
 {
    if(digitalRead(tecla1)==1 && FlagAux==1)
    {

      
      Incremento(++ucContador);

         
      Serial.println (ucContador);
      FlagAux=0;
      delay(300); 
    }
    if(digitalRead(tecla1)==0 && FlagAux==0)
    {
    FlagAux=1;
    delay(300);
 }
 }
    
  }
}