# receptor Infrarrojo con una PIC para control remoto TV



## emula (Sep 2, 2009)

Saludo gente..

aunque el tema de la comunicacion infrarroja tiene bastantes tiempo al aire no he podido conseguir alguna información exacta de como usa una PIC como receptor infrarrojo de un control remoto.

He visto ejemplos de ejemplos de como usar circuitos que activan reles. pero la verdad todos no pasan de 2 o 3 acciones.

Quiero programar una PIC que reciba la información de un control remoto marca Philips. Se que estos controles trabajan bajo protocolo de comunicacion RC-5 y frecuencia portadora de 36Khz.

El modelo del control es el de la derecha http://www.mercadolibre.com.co/jm/img?s=MCO&f=5672322_6101.jpg&v=P 

Estoy trabajando con el programa MICROCODE PICBASIC (mplab como assambler) para crear los .hex por si alguien me tiene alguna información bajo este programa, pero sino cualquier otro lenguaje me serviria si me pudieran explicar eso de ajustar la frecuencia de la PIC a 36KHZ.

Estos controles ya tiene un estandar de trenes de pulsos que podran verlo con mayor facilidad aca http://www.ucontrol.com.ar/wiki/index.php/RC-5

Por favor si alguien conoce alguna información o a trabajado con el tema de la comunicacion de los controles remotos con las PIC me gustaria que me ayudaran.;-)...

Muchas gracias de antemano.


----------



## tecnogirl (Sep 4, 2009)

Pero si ya tienes todo lo necesario... Una sugerencia... antes de programar el PIC usa la computadora y el puerto paralelo para dominar la tecnica de comunicacion de los controles remotos. Yo hice eso y leo en mi PC muchos controles remotos de Sony y luego converti la PC en "control remoto" y lo entendian los aparatos como BetaMax, DVD, etc. Salu2


----------



## emula (Sep 4, 2009)

Gracias por responder. Si creo tener todo lo necesario para ejecutar esta parte del proyecto, pero el detalle que me esta faltando es como configurar la  frecuencia portadora a 36Khz.

Seria bueno como dices practicar con el puerto paralelo o serial de la PC. sera que me explicas un poco mas como lograste tu proyecto y bajo que lenguaje o programa trabajaste... asi me podria guiar para lograr el mio. Salu2


----------



## remigio_morales (Sep 5, 2009)

hola emula, yo estoy interesado en hacer eso con un pic18 y que sea un receptor de un control de tv que use el protocolo RC5. checa este tema, al parecer alguien del foro ya lo estuvo haciendo y ya le salio. https://www.forosdeelectronica.com/f24/protocolo-rc5-pic-ahora-funciona-10966/   espero haber sido de ayuda, minimo dirigiendote a la información.


----------



## tecnogirl (Sep 8, 2009)

emula: La portadora la generas con la funcion sound() y nosound() de la libreria dos.h de C. Puedes programar con C o ASM o sus versiones mas modernas. Salu2.


----------



## emula (Sep 8, 2009)

Saludos remigio_morales y tecnogirl, gracias por la información, cualquier información es importante.. si al parecer el amigo ELIUSM logro establecer comunicación con el control bajo el protocolo RC5 pero en C :-?. YO y el C no nos entendemos mucho ni cuando lo veia en la universidad.

Me acostumbre al cavernicola de Microcode PICBasic por su sencilles y Proton por ser su hermanito;-). pero bueno que se hace sera que tenga que meterme un poco con C o ASM.:-?

Vi por alli una posible solucion http://www.rentron.com/Infrared_Communication.htm la estoy analisando a ver que tan buena es. claro la frecuencia que se trabaja alli es 38Khz pero con las formulitas se puede llegar a la de 36Khz con el mismo cristal de 4MHZ. El detalle son los decimales y el redondeo que hay que hacer que aun no me convence que pudiera afectar a la señal...

estoy aun sin nada fisico montado.. tratare de probar la señal a traves de la IN del MIC de la PC como Osciloscopio a ver..

pero como siempre cualquier ayuda servira..

Gracias y seguimos hablando.


----------



## pablofer (May 11, 2010)

tengo una rutina de para captar la señal del control remoto sony y guradralo en binario en el registro w funciona y pueden usarlo para cualquier cosa


----------



## fdesergio (May 11, 2010)

No veo para que necesitas generar la portadora de 36Khz, simplemente lo que necesitas es interpretar el codigo RC-5, que obtienes de demudular la señal del control remoto (demodular=Eliminar la portadora y extraer la informacion moduladora), para esta parte solo necesitas el receptor IR de un TV, para tu caso un tv marca PHILIPS este te entrega en su salida el tren de pulsos demodulados (sin la portadora ) y debes desde ahi tratarlos e interpretarlos, cualquier cosa avisa, chauuuuuuuu


----------



## FRYCK (May 11, 2010)

hola fdesergio creo que  emula ya  resolvio la  duda  o perecio en el intento mira la fecha  pero  buen dato   
saludos


----------



## josb86 (Feb 10, 2012)

pablofer dijo:


> tengo una rutina de para captar la señal del control remoto sony y guradralo en binario en el registro w funciona y pueden usarlo para cualquier cosa




hola como estas mira estaba pensando en utilizar algo asi, copiar ó grabar la señal que envia una tecla sin importar el tipo de control. has probado esto? te ha funcionado?


----------



## peep387 (Mar 17, 2012)

yo ya me curre ace mucho una pequeña rutina para leer y almacenar los codigos del mando a distancia. solo que para la codificacion clasica nec que consta de 4 cadenas de 8bit.
pero para reconocer todo tipo de mandos a distancia ya es mucho mas dificil dado que tendrias que tener distintas rutinas, para adactarse al metodo de codificacion.

por lo demas menuda escasa aportacion teneis puesta sobre el tema.

aunque no se si emula entrara por aqui todavia.. pero yo tambien uso el compilador microcode picbasic, es muy practico y comodo. pero el programa tienes que adactarlo segun la codificacion del mando.
la verdad que los mandos a distancia de sony tambien trabajan un sistema tipo nec solo que los primeros 16bit corresponden al numero codificador y los siguientes 8bit son el boton pulsado y despues los 8bit pero invertido.

--------_____--__--__--____--____--__--__--_........
pulso inicio------0---0---1------1-----0---0...........
sony.
1001100111010100  = 39380 - codificador

10011010= 154 - boton
01100101= 101
-----------255

esto seria un ejemplo. los 16bit del  codificador yo suelo meterlos en dos bariables de 8bit igual mente y compararlas si es correcto.

los otros mas comunes tipo nec

00000011= 3 -codificador
11111100=152
-----------255

10011010= 154  -boton
01100101= 101
-----------255

algunos panasony contasn de un codigo de 48bit donde las 4 primeras cadenas de 8bit determinan el codificador y las 2 ultimas son como las otras (vamos el boton serian 8bit y su invertido 8bit).

por lo nomal se mudula en el pulso bajo o bueno al cojerlo de un receptor universal lo invierte. esto se hace para ahorrar corriente en el mando.
el primer programa lo hice con el comando pulsin  con un oscilador de 4mhz. suele date un valor de 47+-"0" 130+-"1" segun mando o el estado de las pilas.

aunque todo eso tendras que ir provandolo tu mismo. me imagino que despues de tantos años ya lo tendras mas que solucionado.
un saludo


----------

