ARDUINO: CONFIGURACIÓN DE PARPADEO LED

El objetivo es programar un LED para que parpadeé de forma intermitente con una frecuencia de x segundos, es decir, se va a programar un código encargado de encender y apagar un LED (haciendo uso de la salida digital). Este suele ser uno de los primeros proyectos con arduino.

El código es:

#include <IRremote.h>
#define RECV_PIN  12           //Recibe señal infrarrojo en pin 12
#define LED       13           //Define el pin LED
#define L         16738455
#define UNKNOWN_L 1386468383
bool state = LOW;              //Define la variable en inactivo
unsigned long val;
IRrecv irrecv(RECV_PIN);       //Inicia la recepción en el pin
decode_results results;        // Decodifica los resultado
void stateChange() {           // Función de cambio del Led
  state = !state;
  digitalWrite(LED, state);
}

void setup() {               //Función al iniciar el arduino
  pinMode(LED, OUTPUT);      //Pone el Led como salida
  Serial.begin(9600);        // Define los 9600 baudios a los que trabaja la frecuencia del mando
  irrecv.enableIRIn();       // Empieza a recibir
}
void loop() {                // Función del programa repetida
  if (irrecv.decode(&results)) {
    val = results.value;
    Serial.println(val);
    irrecv.resume();         // Recibe el valor
    delay(5000);             // Realiza el cambio cada 5 segundos
    if(val == L || val == UNKNOWN_L) {
      stateChange();         // Si corresponde llama a la función del cambio
    }
  }
}

Importamos la librería IRemote con la que  recibimos la señal infrarroja por el pin 12, y vamos a definir el pin 13 para que realice nuestro parpadeo. Colocamos la variable como inactiva e iniciamos la recepción del pin decodificando los resultados, ahora vamos a hacer que nuestro led cambie.

Ponemos el Led como salida y definimos los baudios de 9600 para la frecuencia del mando y recibimos nuestro valor, el cambio de parpadeo se producirá cada 5 segundos. Al ejecutar el código se deberá establecer en el pin digital 13 un valor alto (HIGH), esperamos 5 segundos (5000 milisegundos). Este procedimiento se realiza en la función loop() ya que se repite indefinidamente.

Video de demostración: Parpadeo Led

https://youtu.be/-4wQpsM1Hec

Este proyecto ha sido realizado basándose en el código por defecto de Smart Robot Car Kit 3.0 Plus.

Proyecto Arduino

Realizado por: Kevin Maldonado Pico y Laura Tovar Pérez