Estoy usando un Módulo Receptor IR digital y un Módulo Transmisor IR digital conectados cada uno con un Arduino Uno diferente. ¿Cómo puedo transmitir datos como "1234" al receptor y mostrar datos en la pantalla LCD? Esto se debe a que la mayoría de los ejemplos que encontré usando un código remoto IR como Sony y RC4. Solo quiero enviar un dato simple.
Como la pregunta no indica qué módulos de transmisor y receptor de infrarrojos digitales están en uso, esta respuesta explica cómo se puede lograr la comunicación de datos por infrarrojos utilizando simplemente un LED de infrarrojos genérico y un receptor de infrarrojos modulado como el TSOP17xx de Vishay u otras partes similares .
Suposiciones :
Recibiendo :
Esta es la parte facil. Simplemente conecte el pin OUT del sensor al pin serial RX de su Arduino ( pin digital 0 ). Si su Arduino es uno de los modelos básicos (más antiguos), utilícelo Serial.read()
en loop()
:
int inputByte = 0;
if (Serial.available() > 0) {
// read the incoming byte:
inputByte = Serial.read();
// Do stuff with this byte, then loop again
Para Arduino Mega o Due , también puede usar Serial1, Serial2 o Serial3, según el pin RX que use.
Para referencia adicional, consulte la referencia de Arduino Serial .
NB Encienda el sensor con el mismo voltaje que su Arduino realmente ejecuta su microcontrolador a 3,3 o 5 voltios, según el modelo de Arduino. Cada placa Arduino tiene un pin de salida de voltaje adecuado que puede usar para esto. No utilice el suministro externo (normalmente de 7 a 12 voltios) proporcionado a la placa Arduino .
Transmitiendo :
Tiene dos opciones: (1) Arduino, LED y componentes pasivos, o (2) usando un componente de puerta lógica adicional. La primera opción es buena para los LED IR de baja corriente (20-30 mA como máximo):
55,944 Hz
). En su lugar, se entregará un valor de desbordamiento de 421 38,005 Hz
, si es necesario.Conecte una resistencia limitadora de corriente adecuada ( 120 a 150 ohmios en un Arduino de 5 voltios = límite de aproximadamente 18 mA a 23 mA ), un diodo de señal pequeño y el LED en serie como se muestra a continuación:
simular este circuito : esquema creado con CircuitLab
Para controlar un LED de mayor corriente , se puede usar un componente lógico adicional, una compuerta AND cuádruple como SN74AS1008 . Esta parte genera o absorbe hasta 48 mA por compuerta, y se pueden conectar en paralelo varias compuertas para un accionamiento de mayor corriente.
Ahora simplemente use Serial.write()
su loop()
código Arduino para transmitir cualquier dato en serie, que será recibido por el Serial.read()
otro extremo, como se describió anteriormente.
usuario_1818839