Al intentar utilizar un led infrarrojo para utilizarlo como emisor de señal me aparece el siguiente error:
Alguien sabe como solucionarlo (verifique que existiera la clase IRsend y existe y sendNEC como sendSony existen) ???
Al intentar utilizar un led infrarrojo para utilizarlo como emisor de señal me aparece el siguiente error:
Alguien sabe como solucionarlo (verifique que existiera la clase IRsend y existe y sendNEC como sendSony existen) ???
Saludos
Ese error se debe a que hay dos librerias con el mismo nombre, puedes resolverlo de dos maneras.
a.- Copias la libreria en la misma carpeta donde tienes el sketch y usas #include "IRremote" con comillas en vez de <>.
b.- Ve a la carpeta donde tienes el Arduino instalado y borra la carpeta que dice Robot.
Gracias por la respuesta, lo voy a probar. Saludos
@max_saeta probé lo que me comentaste y no lo pude hacer andar. Copie el contenido de la carpeta de la librería "IRemote" en el directorio del sketch y me da el mismo error. Probé de borrar la librería RobotControl(si mal no recuerdo se llama así la librería que trae por defecto) y deje solo la que descargue y nada. Sigue dando ese error.
Que otra cosa se te ocurre que pueda ser ?, en algo le estoy errando pero no se que es. Si pudiera pasarte el sketch completo lo haría para que vieras en que me equivoque.
Desde ya gracias!.
Normalmente cuando borro RobotControl, se me elimina el problema.
Ahora busca la libreria y abrela y revisa sus funciones por si no tiene sendSony
Porque no publicas un enlace a las libreria IRremote.h que estas usando en este sketch.
Simple como eso. Nosotros miramos si sendSony esta o no en la librería.
De acá saque el código y la librería:
http://alumnos.informatica.utem.cl/~srocha/control-universal-con-arduino-utilizando-un-emisor-y-receptor-infrarrojos.html#comment-2149877777
Este es el link de la librería:
https://github.com/shirriff/Arduino-IRremote
Gracias por las respuestas
Estas son las opciones que figuran
enum decode_type_t {
NEC = 1,
SONY = 2,
RC5 = 3,
RC6 = 4,
DISH = 5,
SHARP = 6,
PANASONIC = 7,
JVC = 8,
SANYO = 9,
MITSUBISHI = 10,
SAMSUNG = 11,
LG = 12,
WHYNTER = 13,
AIWA_RC_T501 = 14,
UNKNOWN = -1
};
y acá esta la función que tu requieres
#ifdef SEND_NEC
void sendNEC(unsigned long data, int nbits);
#endif
Cuando coloco el contenido de la carpeta IRemote y verifico si tiene error el código me tira eso (comente la linea irsend.sendNEC para que me diera el error)
Otra vez veo un elementos común de muchos errores que es el IDE 1.6.5. Yo no lo tengo de modo que no puedo asegurarlo pero intenta instalar en otra PC 1.6.0 y prueba todo con esa versión y luego nos cuentas.
Tengo una maquina virtual con Windows 7 y me sale esto cuando compilo:
"Arduino:1.6.0 (Windows 7), Placa:"Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)"
IRrecord.ino:25:1: error: 'IRsend' does not name a type
IRrecord.ino: In function 'void sendCode(int)':
IRrecord.ino:103:7: error: 'irsend' was not declared in this scope
IRrecord.ino:107:7: error: 'irsend' was not declared in this scope
IRrecord.ino:113:5: error: 'irsend' was not declared in this scope
IRrecord.ino:128:7: error: 'irsend' was not declared in this scope
IRrecord.ino:131:7: error: 'irsend' was not declared in this scope
IRrecord.ino:138:5: error: 'irsend' was not declared in this scope
Error de compilación
This report would have more information with
"Show verbose output during compilation"
activala desde Archivo > Preferencias"
Es del ejemplo IRecord de IRemote
Pero eso es porque la librería no fue bien instalada.
revisa si esta en el directorio del arduino\libaries\IRremote
Ahi debes encontrar
IRremote.cpp
IRremote.h
Muchas gracias @max_saeta y @surubyte !
Solucione descargando una nueva versión de la librería, encontré la 2.0.1 BETA y compiló. Luego les comento como me fue enviando y recibiendo datos.
OK. Coloca Solucionado al titulo del primer post