/*β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„
β˜„                                                                            β˜„
β˜„      ☘ DATOS GENERALES:                                                    β˜„
β˜„      NOMBRE:      Uso bΓ‘sico mΓ³dulo infrarrojo.                            β˜„
β˜„      FECHA:       05 de marzo de 2024.                                     β˜„
β˜„      VERSIΓ“N:     1.0.                                                     β˜„
β˜„                                                                            β˜„
β˜„      AUTOR:       M. en C. Esli Castellanos BerjΓ‘n.                        β˜„
β˜„      E-MAIL:      [email protected].                                β˜„
β˜„      COMPAÑÍA:    Universidad de Colima - Facultad de TelemΓ‘tica.          β˜„
β˜„                                                                            β˜„
β˜„      uC:          Atmega328p.                                              β˜„
β˜„      Nombre:      ESP32-S.                                                 β˜„
β˜„                                                                            β˜„
β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„
β˜„                                                                            β˜„
β˜„      ☘ DESCRIPCIΓ“N DEL PROGRAMA:                                           β˜„
β˜„      Arquitectura de software para recibir valores hexadecimales desde     β˜„
β˜„      un control remoto mediante el mΓ³dulo receptor.                        β˜„
β˜„                                                                            β˜„
β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„
β˜„                                                                            β˜„
β˜„      ☘ NOTAS:                                                              β˜„
β˜„                                                                            β˜„
β˜„                                                                            β˜„
β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„β˜„*/

#include <IRremote.h>         
#define IR_PIN 3
#define LED_INDICATOR 9


void setup ( void ) {
  
  Serial.begin ( 9600 );
  IrReceiver.begin( IR_PIN, ENABLE_LED_FEEDBACK );
  
  
}

uint32_t obtener_boton_presionado () {

if ( IrReceiver.decode ( ) ) {   /*~ Si hay un valor recibido. ~*/
   
    IrReceiver.resume ( );       /*~ Limpia el buffer permitiendo mostrar el siguiente nΓΊmero recibido, en caso de no usar estΓ‘ funciΓ³n simplemente se queda el ΓΊltimo valor recibido.~*/
    Serial.println ( IrReceiver.decodedIRData.decodedRawData, HEX ); /*~ Mostrar el valor en hexadecimal. ~*/
    return IrReceiver.decodedIRData.decodedRawData;       /*~ Retorna el valor recibido, en caso de necesitarlo.~*/

  }

}

void loop ( void ) {
  
  
  obtener_boton_presionado ( );   /*~ FunciΓ³n que imprime el valor hexadecimal del botΓ³n presionado. ~*/
  delay (100);
  
}