Você está na página 1de 2

CONTROLANDO UN LED

CON UN LDR EN ARDUINO


JANUARY 7, 2015 OPEN POST

Esto es un ejemplo muy bsico a la hora de empezar con Arduino. Aglutina, en pocas
lneas, todo lo que necesitas para empezar con fuerza en este mundillo.

En este ejemplo haremos un programa que enciende el LED 13 (el integrado en placa),
lee un sensor de luz (un LDR) conectado al pin A5 y enciende un LED conectado al pin
3 con una intensidad inversamente proporcional a la intensidad que reporte el sensor
(cuanta ms luz ambiental, menos brilla el LED), que se actualiza cada 50 milisegundos,
prcticamente a tiempo real. Adems, dejamos configurado el puerto serie para ver, en
el ordenador, el valor de entrada del sensor de luz (de 0 a 1023).

En este ejemplo ponemos en prctica los siguientes conceptos:

Realizar un montaje bsico


Definir variables
Escribir un pin en digital.
Escribir un pin en analgico.
Leer un sensor
Abrir y leer un puerto serie

Bien, antes de comenzar, repasamos los materiales que vamos a necesitar para el
montaje bsico:

1. Arduino UNO (o compatible)


2. Protoboard o Breadboard
3. Diodo LED de 5mm y 20mA
4. Resistencia de 220 (conectado al nodo del LED)
5. Resistencia de 10K (conectado al LDR)
6. Sensor de luz LDR
7. Juego de cables
Esquema del cableado para este ejemplo

Tras montar el circuito del sistema, procedemos a escribir el programa que cargaremos
con el Software de Arduino. Para ello, puedes copiar y pegar el siguiente ejemplo:

<span style="color: #c60;">int</span> analogPin = 3;


1 <span style="color: #c60;">int</span> digitalPin = 13;
2 <span style="color: #c60;">int</span> delayTime = 50;
3 <span style="color: #c60;">int</span> ldrPin = A5;
4
5 <span style="color: #c60;">void setup</span>(){
6 <span style="color: #c60;">Serial</span>.<span style="color: #c60;">begin</span>(9600);
7 <span style="color: #c60;">pinMode</span>(analogPin, OUTPUT);
8 }
9
10 <span style="color: #c60;">void loop</span>(){
11 <span style="color: #c60;">int</span> power = 255 - <span style="color: #c60;">analogRead</span>(ldrPin) / (
12 1023 / 255);
13 <span style="color: #c60;">analogWrite</span>(analogPin, power);
14 <span style="color: #c60;">digitalWrite</span>(digitalPin, HIGH);
15 <span style="color: #c60;">delay</span>(delayTime);
16 <span style="color: #c60;">Serial</span>.<span style="color: #c60;">println</span>(<span style="color: #c60;"
17 >analogRead</span>(ldrPin));
}

Como vemos, el programa se divide en 3 partes. En la primera definimos las variables,


en la segunda configuramos el programa y en la tercera ejecutamos el bucle que es en s
mismo el programa.

Disfrutad!

Você também pode gostar