Abrir el programa de ejemplo
P07_Regulacion_LED.ino
con el IDE de Arduino y grabarlo
sobre la tarjeta controladora.
Qué vas a ver
AL deslizar el mando regularemos el brillo del LED. Si se mueve a la izquierda, hacia el
conector, el brillo disminuye y al moverlo a la derecha el brillo aumenta.
Descripción del programa
Variables enteras: int ledPin = 5;
int pmeterPin = A0; int pmeterValue = 0;
Lo primero siempre es declarar los pines y asignar valores. Lo nuevo es que en esta ocasión
usaremos una entrada analógica para el potenciómetro. En esta lección declaramos el ledPin
en D5 y pmeterPin en A0. El valor inicial de pmeterValue es 0.
Entrada o Salida: pinMode(pmeterPin, INPUT); pinMode(ledPin,OUTPUT);
En la función setup() configuramos el potenciómetro como entrada para leer su valor, y el pin
LED como salida sobre la que escribiremos el valor leído desde el potenciómetro.
Entrada analógica: pmeterValue = analogRead(pmeterPin);
A diferencia de los pines digitales, debemos usar la función analogRead() para leer el valor de
la entrada analógica que indiquemos, en este caso A0. Devuelve un número entre 0, si la
entrada está a 0V, y 1023 si la entrada está 5V. Dicho valor se asigna a la variable
pmeterValue.
Función matemática de Arduino map(): int gapValue = map (valor, valor mínimo inicial,
valor máximo inicial, valor mínimo final, valor máximo final)
Pasa números de un rango a otro de forma proporcional. Un valor inicial comprendido entre un
mínimo y un máximo es convertido a otro valor final también comprendido entre un mínimo y
un máximo. En este ejemplo el valor de pmeterValue comprendido entre 0 y 1023 se convierte
en otro proporcional comprendido entre 0 y 255 y se almacena en la variable gapValue.
24