Diferencia entre revisiones de «analogRead()»

De ArduWiki
Saltar a: navegación, buscar
(Comentarios)
(Referencias)
Línea 54: Línea 54:
 
== Referencias ==
 
== Referencias ==
 
* [http://manueldelgadocrespo.blogspot.com/p/description-reads-value-from-specified.html Manuel Delgado Crespo]
 
* [http://manueldelgadocrespo.blogspot.com/p/description-reads-value-from-specified.html Manuel Delgado Crespo]
 +
* [https://aprendiendoarduino.wordpress.com/tag/analogread/ Aprendiendo Arduino]
  
 
[[Category:Funciones]]
 
[[Category:Funciones]]

Revisión del 19:00 3 jul 2018

Descripción

Lee el valor de pines analógicos marcados en Arduino como A0~A5, con una resolución de 10 bits. Esta instrucción sólo funciona en los pines (A0~A5).

Nota: Los pines analógicos de entrada, al igual de que digitales de entrada no necesitan ser definidos con pinMode().


Sintaxis

analogRead(pin);

Parámetros

pin
un pin analogico. A0~A5 en Arduino UNO, A0~A7 en Arduino MINI y NANO, A0~A15 en Arduino MEGA.

Retorno

El rango de valores devuelto puede estar entre 0~1023. Numero tipo int.

Advertencias

  • No debes dejar al aire estos pines porque generan ruido electrico.
  • La placa Arduino UNO contiene 6 canales (8 canales para MINI y NANO, 16 para MEGA), analógicos con convertidor analógico a digital (ADC) de 10 bit. Esto significa que mapeará tensiones de entrada entre 0~5V en valores enteros entre 0~1023. Esto produce una resolución entre las lecturas de 4.9 mV por unidad.

Comentarios

  • Si el pin de entrada analógica no está conectado (al aire o flotante), el valor devuelto por 'analogRead() fluctuará en base a una serie de factores (por ejemplo, los valores de las otras entradas analógicas, lo cerca que tu mano este a la placa, etc.).
  • El rango de entrada y la resolución se pueden cambiar con analogReference().
  • Se tarda unos 100 microsegundos para leer y codificar una entrada analógica, por lo que la velocidad de lectura máxima es de alrededor de 10,000 veces por segundo.

Ejemplo 1

analogRead(A0);
analogRead(5);

const byte pin = 3;
int valor = analogRead(pin);

Ejemplo 2

void setup(){
   Serial.begin(9600);
}
void loop(){
   Serial.println(analogRead(A2));
}

Vea también

Referencias