ENTRADAS

Criar um Site Grátis Fantástico
ENTRADAS

ENTRADAS, INSTRUÇÕES "if", INPUT E "digitalRead"

Vamos evitar usar caracteres da língua portuguesa e acentuação. Afinal, esta linguagem eh em ingles e mais tarde poderemos ter complicações.

Vamos redigir as instruções do C++ para este caso: acender um LED quando um botão é apertado. Faça a montagem abaixo:

int temp = 1000;   // tempo de espera

int pinLED = 11;   // pino do LED

int pinBotao = 7; //pino do botao

 

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 condição SE

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

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

       delay (1000); //espera o tempo determinado como aceso

   }   //fim da rotina condicional

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

  

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

 

Observe o duplo sinal de igual (= =)... Isto significa que o processador tem que comparar SE é igual, senão ele fará ser igual.

Palavras adicionadas ao vocabulário: digitalRead, INPUT, if.

 

DESAFIO:

Altere o programa para que o LED fique aceso ao aperta o botão e apague somente quando for novamente apertado. Dica: use uma variável para assumir valor 1 se está aceso e 0 se está apagado. Você também precisara uma nova instrução complementar  ao "if" chamada "else".