lunes, 4 de julio de 2016

Sensor IR e interrupciones Arduino

En esta entrada hablaré de los sensores de infrarrojos o IR y de como declarar y utilizar las interrupciones del arduino.



Las interrupciones son partes del código que se ejecutan cuando se produce un cierto evento sin importar en la parte del ciclo de ejecución en el que se encuentre el código, volviendo a retomarlo cuando acabe de ejecutar el código de la interrupción.


Los sensores IR nos permiten leer los mandos a distancia o cualquier otro dispositivo que emita en la misma frecuencia, estos sensores son digitales con lo que la lectura la realizaremos desde un Pin digital, son ideales para proyectos de control a distancia.

Ejemplo completo: Sensor_IR
Librería necesaria para el sensor: NECIRrcv

En esta entrada al igual que en la anterior solo explicaré las funciones más utilizadas de la librería y como declarar y utilizar una interrupción:

Comencemos con el código:

Lo primero es declarar el pin en el que se encuentra el sensor IR:

#define IRPIN 2 
NECIRrcv ir(IRPIN);

Una vez incluidas las librerías necesarias dentro de nuestro programa tendremos que iniciar el sensor y la interrupción dentro del void setup():


void setup() 
{
  Serial.begin(9600);
  ir.begin();
  Serial.println("NEC IR code reception");
 attachInterrupt(0, LecturaIR, RISING); // Pin asociado, 0 = Pin 2 1 = Pin 3, nombre de la interrupción, evento que la activa RISING sería un flanco positivo en el pin 2.
}

Una vez iniciado todo ya podemos utilizar el sensor IR para hacer una lectura de un mando, esto lo haré dentro de la interrupción:

void LecturaIR()
{
    unsigned long ircode ;
    while (ir.available()) 
    {
    ircode = ir.read();
    Serial.print("got code: ");
    Serial.println(ircode,HEX);
  }
}

Esquema de conexiones:


1 comentario:

  1. youtube.co/videos/gta$5b$2k-bet-novelo-casino-free-videos
    youtube.co/videos/gta$5b$2k-bet-novelo-casino-free-videos · youtube.co.uk · youtube.co.uk · youtube.co.uk · youtube.co.uk · youtube.co.uk · youtube.co.uk · youtube to mp3 320kbps youtube.co.uk

    ResponderEliminar