Lista de materiales para este tutorial
Pieza | Cantidad | |
---|---|---|
Diodo Led 5mm - Rojo | 1 | |
Resistencias 1/4 W - 220R | 1 | |
40 x Cables Macho-Macho 20cm jumper dupont 2.54 | 1 | |
PLACA PROTOTIPO MB102 400 | 1 | |
Arduino UNO R3 Compatible ATMEGA328 | 1 |
Es este tutorial vamos a aprender a controlar un led de manera fácil con nuestro arduino. Si quieres aprender como funciona internamente un led te recomendamos que visites el tutorial de ¿Que es un led?.
Para conectarlo pondremos en nuestra placa de prototipos el led recordando en qué conector hemos puesto la pata larga del led (+). En la pata larga pondremos la resistencia de 220 Ohm y el otro extremo lo conectaremos al pin digital número 9 de nuestro Arduino.
La patita corta del led (-) la conectaremos a un pin GND de nuestro Arduino. En los siguientes esquemas os mostramos gráficamente cómo conectarlo.
Con Arduino Uno
Con Arduino Mega
Con Arduino Nano
Ya lo tenemos todo listo para pasar a la programación. En este caso vamos a programar nuestra placa para que encienda el led tras ejecutar el programa, espere 500 milisegundos y lo apage.
Para ello vamos a explicar las funciones que vamos a usar dentro de nuestro Arduino IDE:
SETUP()
En nuestro software Arduino, la función setup es una función que solo se ejecuta en el encendido de nuestro Arduino, por lo que aquí es donde pondremos la configuración de los pines (pinMode), los iniciadores (begin) que pueda tener cualquier librería que hayamos añadido o cualquier configuración del aparato o variables que queremos que se realicen durante el encendido.
PINMODE()
El pinMode se utiliza para configurar el uso de los pines digitales o analógicos que vayamos a usar de manera digital dentro del Arduino. Su estructura es pinMode(número de pin, Modo de uso), donde en el número de pin, pondremos el pin que queremos configurar (que hayamos conectado) y en Modo de uso pondremos:
- INPUT (si va a ser una entrada, por ejemplo botones, lectura de sensores... )
- OUTPUT (si va a ser una salida, por ejemplo, encendido de un led o encendido de sensor...)
- INPUT_PULLUP (si va a ser una entrada pero queremos usar la resistencia PULLUP interna de nuestro arduino, en caso de botones por ejemplo)
Esta función tendremos que añadirla tantas veces como pines de entrada o salida tengamos conectados en nuestro prototipo. En el caso de este tutorial solo lo pondremos una vez.
LOOP()
En nuestro software Arduino, la función loop es una función que se ejecuta en bucle (continuamente) mientras nuestro arduino está en marcha de manera secuencial, es decir, en orden de líneas que existen dentro del loop. En ella pondremos todas las funciones y chequeos que va a realizar durante su ciclo normal de trabajo: lectura de sensores, encendido y apagado de leds, cálculos que necesitemos realizar con la captura de los sensores,...
DIGITALWRITE()
El comando digitalWrite se utiliza para escribir o cambiar el estado de un pin digital de encendido a apagado. Su estructura es la siguiente: digitalWrite( número de pin, Estado), donde en el número de pin pondremos el pin sobre el que queremos realizar la acción y en estado pondremos:
- HIGH (si queremos que encienda la salida, por ejemplo, encender un led)
- LOW (si queremos que apague la salida, por ejemplo, apagar un led)
DELAY()
El comando delay se utiliza para añadir un tiempo de espera en el programa. Esta función tiene la siguiente estructura: delay(tiempo de espera en milisegundos), donde en tiempo de espera en milisegundos pondremos los milisegundos que queremos que espere el programa para continuar.
Una vez visto un resumen del uso de los comandos, vamos a pasar a programar en nuestro Arduino IDE con el siguiente código:
Código completo
void setup() {
pinMode(9, OUTPUT); //Declaramos el pin 9 como sálida
}
void loop() { digitalWrite(9, HIGH); //Ponemos el pin 9 a Alto(Encendido) delay(500); //Añadimos un retardo de 500 milisegundos
digitalWrite(9, LOW); //Ponemos el pin 9 a Bajo(Apagado) delay(500); //Añadimos un retardo de 500 milisegundos }