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.
Bom Trabalho.
