Learning   Examples | Foundations | Hacking | Links

Ejemplos > E/S Analógica

Entrada Analógica

Un potenciómetro es un elemento pasivo con un eje que proporciona una resistencia variable, la cual puede ser leida por una placa Arduino como un valor analógico. En este ejemplo, ese valor controlará la frecuencia con la que parpadeará un LED

Conectamos 3 cables a la placa Arduino. El primero desde masa a uno de los pines extremos del potenciómentro. El segundo, desde 5 voltios al otro pin extremo del potenciómetro . El tercero desde el pin analógico 2 al pin medio del potenciómetro.

Al girar el eje del potenciómetro, cambiamos el valor de la resistencia entre los pines de los extremos y el pin central del potenciómtro. Esto cambia la "cercanía" relativa del pin central a 5 Voltios y a masa, ofreciendo diferentes valores analógicos de entrada. Cuando giramos el eje a tope en un sentido, llegarán 0 voltios al pin central, y leeremos 0. Cuando giramos el eje a tope, pero en el otro sentido, llegarán 5 voltios al pin central y leeremos 1023. Entre medias, analogRead() retorna un número entre 0 y 1023 que es proporcional al valor del voltaje aplicado al pin central.

Circuito

Una entrada analógica conectada a un pin de entrada analógica click en la imagen para aumentar

image developed using Fritzing. Para más circuitos de ejemplo, ver Fritzing project page

Esquema

click en la imagen para aumentar

Código

/* Entrada analógica

 Demostración de entrada analógica. Se lee de un sensor analógico conectado al pin analógico 0  
 alternando entre encendido y apagado de un diodo(LED)  conectado al pin digital 13. 
 El tiempo que el LED estará encendido o apagado, dependerá del valor obtenido con analogRead(). 

El circuito:

 * Potenciómetro conectado al pin analógico 0
 * pin central del potenciómetro conectado al pin
 * el pin de un extremo (cualquiera) a masa
 * el otro a +5V
 * el ánodo del LED (patilla larga) conectado a la salida digital 13
 * el cátodo del LED  (patilla corta) conectado a masa

 * Nota: Como en la mayoría de las placas Arduino viene de fábrica un LED ligado al pin digital 13, el LED es opcional.

 Creado por David Cuartielles
 Modificado 16 Jun 2009
 por Tom Igoe

 Este código de ejemplo es de dominio público.

 http://arduino.cc/en/Tutorial/AnalogInput

 */

int sensorPin = 0; // selecciona el pin de entrada para el potenciómetro int ledPin = 13; // selecciona el pin para el LED int sensorValue = 0; // variable para almacenar el valor que ofrece el sensor

void setup() {

  // declara el ledPin como salida (OUTPUT):
  pinMode(ledPin, OUTPUT);  

}

void loop() {

  // lee el valor del sensor:
  sensorValue = analogRead(sensorPin);    
  // enciende el  ledPin
  digitalWrite(ledPin, HIGH);  
  // detiene el programa durante <sensorValue> milisegundos:
  delay(sensorValue);          
  // apaga el ledPin :        
  digitalWrite(ledPin, LOW);   
  // detiene el programa durante <sensorValue> milisegundos:
  delay(sensorValue);                  

}

Share