Paso 3: Decodificación de señales de infrarrojos (circuito y Software)
Circuito:
Si tienes un escudo infrarrojo usted es buenos ir.
Si no la tienen escudo infrarrojo también puede seguir este paso haciendo lo siguiente:
Fácilmente puede decodificar las señales IR con tu Arduino con un TSOP382 y la Biblioteca infrarrojo de Shield para Arduino.
- Conecte un TSOP382 como se muestra en la Página 1 del circuito de aplicación de la hoja de datos TSOP382 (adjuntamos). El pin de "OUT" de la TSOP382 tendrá que ser conectado al pin 4 de tu Arduino.
Software:
- Cargar el ejemplo de Receptor de IR la descarga en su Arduino.
- Abra la ventana de serial monitor de Arduino.
- Tome el control por rayos infrarrojos que desea deshacerse, entonces su IR a la TSOP382 el punto y presione las teclas como decodificar.
Debería ver una salida similar al siguiente:
Donde, en este caso, "NEC" es IR protocolo del control, y "FF609F" es el código de infrarrojos de la clave en hexadecimal.
La matriz de "Primas" de los números es que una representación de cada uno de lo IR señales de pulso en microsegundos (us) mirando con un pulso de alta entonces un pulso bajo y alternando hasta que la señal entera se ha leído.
En el ejemplo anterior "-16246 8950-4500 600" significa 16246us alto, 8950us baja, 4500us 600us alta, baja.
Nota: Si desea utilizar un código de la materia prima en vez de su valor hexadecimal deberás limpiar quitando el primer elemento (-16346) y eliminar el signo negativo (-) de todos los demás elementos.
En el ejemplo anterior el código crudo resultante después de la limpieza tendría este aspecto:
Si usted desea aprender cómo cambiar un código crudo de NEC a un número hexadecimal a mano (por diversión), revisa esta página web sobre el protocolo NEC. Para ayudarle a empezar, en el crudo código anterior:
- 8950us (que es casi 9000us) corresponde al partida pulso alto de 9ms (1000us = 1ms) en el protocolo NEC.
- 4500us corresponde a 4.5ms
- y 600us 550us sería un "0" del pedacito (dos 562.5us pulsos, una alta y una baja)