CONDICIONAIS

Criar uma Loja Virtual Grátis
CONDICIONAIS

CONDICIONAIS, INSTRUÇÃO "else"

Antes, conseguiu fazer o desafio anterior?

Usando a mesma montagem anterior (ENTRADAS), vamos fazer o LED alternar entre aceso e apagado  APENAS quando o botão é apertado.

pg03

int temp = 1000;     // tempo de espera

int pinLED = 11;   // pino do LED

int pinBotao = 7; //pino do botão

int estado = 0;       //estado do LED: 0 = apagado, 1 = aceso

  

void setup()

{   //inicia o bloco de instruções do setup

   pinMode (pinLED, OUTPUT); // informa que o pinLED é saída

   pinMode (pinBotao, INPUT); //informa que pinBotao é entrada

                                                   //pode ser usado qualquer pino

}   //finaliza o bloco de instruções do setup

 

void loop()   //inicia o bloco de instrucoes do loop

{   //inicia o bloco de instruções

 

   if (digitalRead (pinBotao) == HIGH) //verifica uma condicao

   { //inicio da rotina de verificação SE ocorreu aperto do botão

 

       if (estado == 0) //nova verificação do estado do LED

       {

           estado = 1; //muda a condição para aceso

           digitalWrite (pinLED, HIGH); //acende o led

           delay (temp); //tempo para soltar o botao

       } //fim da verificação do estado apagado

 

       else //instruções SE... OU... ENTAO

       {   //esta condição será executada apenas SE a anterior não se verificou

           //(isto eh, o LED estava em 1, aceso)

           estado = 0; //muda a condicao para apagado

            digitalWrite (pinLED, LOW);   //apaga o LED

           delay (temp); //tempo para soltar o botao

       }

 

   }   //fim da rotina SE ocorreu aperto do botao

  

}   //finaliza o bloco de instruções do loop

 

Percebeu como usar tabulação para afastar as linhas ajuda na visão do programa?

Palavras adicionadas ao vocabulário: else.

 

DESAFIO:

Explique o que acontece se você mantiver o botão apertado. Justifique na programação.