.. note:: ¡Hola, bienvenido a la Comunidad de Aficionados a Raspberry Pi, Arduino y ESP32 de SunFounder en Facebook! Profundiza en Raspberry Pi, Arduino y ESP32 con otros entusiastas. **¿Por qué unirse?** - **Soporte de expertos**: Resuelve problemas posventa y desafíos técnicos con ayuda de nuestra comunidad y equipo. - **Aprender y compartir**: Intercambia consejos y tutoriales para mejorar tus habilidades. - **Vistas previas exclusivas**: Obtén acceso anticipado a anuncios de nuevos productos y avances. - **Descuentos especiales**: Disfruta de descuentos exclusivos en nuestros productos más nuevos. - **Promociones festivas y sorteos**: Participa en sorteos y promociones de fiestas. 👉 ¿Listo para explorar y crear con nosotros? Haz clic en [|link_sf_facebook|] y únete hoy! .. _ar_receiver: 5.11.2 Receptor de Infrarrojos ================================= En este proyecto, aprenderás a usar un receptor de infrarrojos. Un receptor de infrarrojos es un componente que recibe señales infrarrojas y puede recibir de manera independiente rayos infrarrojos y emitir señales compatibles con el nivel TTL. Es similar en tamaño a un transistor normal empaquetado en plástico y es adecuado para todo tipo de control remoto por infrarrojos y transmisión de infrarrojos. **Componentes Necesarios** En este proyecto, necesitamos los siguientes componentes. Es definitivamente conveniente comprar un kit completo, aquí está el enlace: .. list-table:: :widths: 20 20 20 :header-rows: 1 * - Nombre - ELEMENTOS EN ESTE KIT - ENLACE * - 3 in 1 Starter Kit - 380+ - |link_3IN1_kit| También puedes comprarlos por separado en los enlaces a continuación. .. list-table:: :widths: 30 20 :header-rows: 1 * - INTRODUCCIÓN DEL COMPONENTE - ENLACE DE COMPRA * - :ref:`cpn_uno` - |link_Uno_R3_buy| * - :ref:`cpn_breadboard` - |link_breadboard_buy| * - :ref:`cpn_wires` - |link_wires_buy| * - :ref:`cpn_receiver` - \- **Esquemático** .. image:: img/circuit_7.2_receiver.png **Cableado** En este ejemplo, conectamos el pin izquierdo del receptor de infrarrojos al pin 11, el pin central a GND, y el pin derecho a 5V. .. image:: img/ir_remote_control_bb.jpg **Código** .. note:: * Abre el archivo ``5.11.ir_receiver.ino`` en la ruta ``3in1-kit\basic_project\5.11.ir_receiver``. * O copia este código en el **Arduino IDE**. * Aquí se usa la biblioteca ``IRremote``, puedes instalarla desde el **Library Manager**. .. image:: ../img/lib_irremote.png .. raw:: html Después de cargar los códigos en la placa R3, podrás ver que el valor actual del botón presionado del control remoto IR se muestra en el monitor serial. **¿Cómo funciona?** Este código está diseñado para trabajar con un control remoto infrarrojo (IR) utilizando la biblioteca ``IRremote``. Aquí tienes el desglose: #. Incluir Bibliotecas: Esto incluye la biblioteca ``IRremote``, que proporciona funciones para trabajar con controles remotos IR. .. code-block:: arduino #include #. Define el pin de Arduino al que está conectado el pin de señal del sensor IR. .. code-block:: arduino const int IR_RECEIVE_PIN = 11; // Define the pin number for the IR Sensor #. Inicializa la comunicación serial con una tasa de baudios de 9600. Inicializa el receptor IR en el pin especificado (``IR_RECEIVE_PIN``) y habilita el feedback LED (si aplica). .. code-block:: arduino void setup() { Serial.begin(9600); // Start serial communication at 9600 baud rate IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK); // Start the IR receiver } #. El bucle se ejecuta continuamente para procesar las señales entrantes del control remoto IR. .. code-block:: arduino void loop() { if (IrReceiver.decode()) { String decodedValue = decodeKeyValue(IrReceiver.decodedIRData.command); if (decodedValue != "ERROR") { Serial.println(decodedValue); delay(100); } IrReceiver.resume(); // Enable receiving of the next value } } * Verifica si se ha recibido y decodificado con éxito una señal IR. * Decodifica el comando IR y lo almacena en ``decodedValue`` usando una función personalizada ``decodeKeyValue()``. * Verifica si el valor decodificado no es un error. * Imprime el valor IR decodificado en el monitor serial. * Reanuda la recepción de señales IR para la siguiente señal.