Depois de muito tempo fora, vamos a nossa terceira aula. Neste post vamos entender
como ler um sinal analógico na entrada do Arduino. O programa abaixo vai
ler um sinal de tensão(Volts) variável em um dos pinos de entrada analógica(os pinos de entrada analógica são os pinos nomeados como A0, A1, A2, A3, A4 e A5), e conforme o
valor lido vamos acender um Led mais rápido ou mais devagar, quando mais alto for o valor do sinal(tensão) mais demorado é o tempo que o Led fica aceso e apagado.
Detalhando o código de leitura
// Tutorial 3 - Lendo Sinal Analógico na entrada do Arduino
//Profº Bruno Orosco
// declaração do pinos
int sensorPin = A0; // seleciona o pino que fará a leitura
int ledPin = 13; // seleciona o pino do LED
// declaração das variáveis
int sensorValor = 0; //cria um variável do tipo inteira
void setup() {
// declaração do pino como saída
pinMode(ledPin, OUTPUT);
}
void loop() {
// Lê o valor de entrada de 0 a 5V e armazena na variável sensorValor
sensorValor = analogRead(sensorPin);
// acende o Led
digitalWrite(ledPin, 1);
// aguarda o tempo representado pelo sensorValor
delay(sensorValor);
// desliga o Led
digitalWrite(ledPin, 0);
// aguarda o tempo representado pelo sensorValor
delay(sensorValor);
}
* sensorValor = analogRead(sensorPin);
Esta sintaxe faz a leitura do valor que esta no pino, podendo ser de 0V a 5V, e armazena esta informação na variável sensorValor, a informação armazenada é coloca em um resolução de 10bit, ou seja, qualquer valor de 0 a 1023, sendo 0 igual a 0V e 1023 igual 5V.
Este valor armazenado é colocado direto no valor de tempo do delay, a base de tempo esta em milissegundo.
Este valor armazenado é colocado direto no valor de tempo do delay, a base de tempo esta em milissegundo.
Esquema Elétrico de Ligação
Bom Trabalho.