Arduino - Aula 2: Lendo um Sinal

     



       Bom galera vamos a nossa segunda aula, neste post vamos entender como ler um sinal digital na entrada do Arduino. O programa abaixo vai ler um sinal de tensão(Volts) no pino indicado como entrada, e conforme o valor do sinal vai acender ou não um Led ligado ao pino 13 do Arduino.

Detalhando o código de leitura

// Tutorial 2 - Lendo Sinal na entrada do Arduino
//Profº Bruno Orosco 
 
// declaração do pinos  
const int Pin_Botao = 2;     // constante Pin_Botao valor de 2
const int Pin_Led =  13;      // constante Pin_Led valor de 13

//declara variavel de leitura
boolean valor_botao = 0;     // variavel booleana valor_botao 
 
void setup() 
{
  // habilita o pino do led como saída
  pinMode(Pin_Led, OUTPUT);      
  // habilita o pino do led como saída
  pinMode(Pin_Botao, INPUT);     
}

void loop(){
  // lê o valor de 0V ou 5V que esta no pino 2(Pin_Botao)
 valor_botao = digitalRead(Pin_Botao);

  // o laço de decisão "if" verifica se o valor lido no pin_botão
  // é verdadeiro
  if (valor_botao == HIGH) {     //se o valor for igual a 1(um)
    // acende Led
    digitalWrite(Pin_Led, HIGH);  
  } 
  else {  // senão, ou seja, se o valor for diferente de 1(um) vem pra cá
    // desliga Led
    digitalWrite(Pin_Led, LOW); 
  }
}
 
Podemos utilizar qualquer pino como entrada. 
  
 * valor_botao = digitalRead(Pin_Botao);
 
       Esta sintaxe faz a leitura do valor que esta no pino, podendo ser 0V ou 5V, e armazena esta informação na variável valor_botao sendo 0 ou LOW quando tenho 0V na entrada e quando tenho 5V armazena 1 ou HIGH.   


*if (valor_botao == HIGH)
 
Esta instrução representa um laço de decisão, é feito uma comparação e se for verdadeira executa as informações que estão entre colchetes. Se o valor for diferente é executado o que estiver entre colchetes da sintaxe  else.

Bom Trabalho.