int analogRead(pin)

Descripción

Lee o captura el valor de entrada del especificado pin analógico, la tarjeta Arduino realiza una conversión analógica a digital de 10 bits. Esto quiere decir que mapeará los valores de voltage de entrada, entre 0 y 5 voltios, a valores enteros comprendidos entre 0 y 1024.

¿Explicación (Formula conversión analógica a digital de 10 bits)?

Un conversor ADC de n-bit tiene un valor máximo de 2^n - 1 y una resolución de Vref/2^n.

Parámetros

Es necesario especificar el número de pin que se quiere leer o capturar su valor de entrada. Tiene que ser uno de los pins analógicos de la tarjeta, así que debe ser un número comprendido entre 0 y 5. También podría ser una variable, representando un valor en dicho rango.

Nota

Los pines analógicos, al contrario que los pines digitales, no necesitan ser declarados como modo INPUT (entrada) o OUTPUT (salida).

Esta función devuelve

Un valor entero comprendido en el rango de 0 a 1024.

Ejemplo

int ledPin = 13; // LED conectado a pin digital 13

int analogPin = 3; // potentiómetro conectado a pin analógico 3

int val = 0; // variable para almacenar el valor capturado

int threshold = 512; // valor de disparo o umbral (1024/2)

void setup() {

  pinMode(ledPin, OUTPUT);   // asigna modo salida el pin digital 13 

}

void loop() {

  val = analogRead(analogPin);   // captura el pin de entrada
  if (val >= threshold) {
    digitalWrite(ledPin, HIGH);   // enciende el LED
  } else {
    digitalWrite(ledPin, LOW);   // apaga el LED
  }

}

Asigna el valor HIGH(1) o LOW(0) al pin 13, dependiendo de que si el valor de entrada al pin analógico es mayor que un cierto valor de disparo o umbral.

Ver también

  • pinMode
  • digitalWrite
  • analogWrite

Volver a Indice