Read analog voltage
Este ejemplo muestra cómo leer una entrada analógica en el pin analógico A0, convertir los valores de analogRead() en voltaje e imprimirlo en el monitor serie del software Arduino (IDE).
Circuito
Conecta un potenciometro de 10K para simular el sensor. Los extremos deben ir a +5V y GND respectivamente el centro (cursor) lo debes conectar al pin analógico A0.
Al girar el eje del potenciómetro, cambia la cantidad de resistencia en cada lado del potenciómetro y este se convierte en un divisor de tension.
El uC del Arduino tiene un circuito interno denominado ADC que lee esta tensión y la convierte en un número entre 0~1023. Cuando el eje gira completamente en una dirección, hay 0 voltios que van al pin, y el valor de entrada es 0. Cuando el eje se gira completamente en la dirección opuesta, hay +5V que van al pin A0 y el valor sera 1023. Es decir analogRead() devuelve un número entre 0~1023 que es proporcional a la cantidad de voltaje que se aplica al pin analogico A0.
Placa aplicable
Todas.
Código
Tenemos un sensor en al pin analógico A0 y queremos saber que tensión esta entregando.
void setup() {
Serial.begin(11520);
}
void loop() {
int sensor = analogRead(A0);
//Convierte lectura sensor (0~1023) a tension (0~5V)
float voltaje = sensor * (5.0 / 1023.0);
Serial.println(voltaje);
}
Comentarios
- Nota que NO es necesario usar pinMode() en las entradas analogicas.
Vea también
<syntaxhighlight lang="c++">