Está en la página 1de 4

nformacin adicional Pic Basic Pro RECEPCON DATOS CONTROL REMOTO SONY

Pgina 1 de 4
Autor: Alberto Valdez - Minibotics
RECEPCION DE DATOS CON CONTROL REMOTO SONY

Los controles remotos de equipos SONY envan seales, que se encuentran
codificadas a 38 kHz. El protocolo de comunicacin SONY, enva sus datos
(comandos) en un paquete de13 bits, de los cuales 5 bits contienen la informacin
codificada del control remoto (0 - 31) y 7 representan el valor de la tecla
presionada (0 127). La figura 1 representa el envo del paquete de bits de un
control remoto SONY.











Figura 1. Bits que enva eI controI remoto aI presionar aIguna tecIa.

Las siguientes tablas, muestran los valores principales de los datos enviados
correspondientes al cdigo (Comando) del control remoto y al cdigo (comando)
de tecla.






















TabIas 2 y 3. TabIas de cdigos de dispotivos y cdigos de funciones.
Cdigos de dispositivos (control remoto)
Cdigos de funciones (Teclas)
nformacin adicional Pic Basic Pro RECEPCON DATOS CONTROL REMOTO SONY
Pgina 2 de 4
Autor: Alberto Valdez - Minibotics
El compilador PBP no cuenta directamente con una instruccin para recibir
seales infrarrojas codificadas, sin embargo se puede crear una rutina especial
que realice esta funcin y se llame cada vez que se requiera. Hay muchas formas
de hacer esto, sin embargo, en esta informacin se propone una forma simple y
prctica, que se describe paso a paso a continuacin. Para este ejemplo, se utiliza
el PC16F876, sin embargo, puede funcionar con cualquier otro PC realizando los
cambios pertinentes para cada caso.

1. Crear un programa en el editor Micro Code Studio, que por ejemplo, le
daremos el nombre de NFRAN. Es importante, guardar este programa con la
extensin .bas (Basic). Por default, al guardar un programa, el editor lo guarda
con extensin pbp (Pic Basic Pro), por lo que es necesario seleccionar la
opcin de guardar como y seleccionar el tipo de archivo como Basic File (bas).
La ruta en donde se debe guardar este programa, es en la carpeta PBP que se
crea cuando instalamos el Pic Basic Pro, generalmente se ubica en el
directorio raiz (unidad C:\PBP).

2. El programa deber contener el siguiente cdigo:

R_Dev VAR BYTE
NFRA VAR BYTE
Bitcnt VAR WORD
P_Val VAR WORD
Packet VAR WORD
header VAR word

GOTO fin

NFRAN:

R_Dev=255
NFRA=255
PULSN PortA.3,0,Header
F Header < 200 THEN RETURN
F Header > 270 THEN RETURN
FOR Bitcnt=0 TO 11
PULSN PortA.3,0,P_Val
F P_Val >= 90 THEN
Packet.0[Bitcnt]=1
ELSE
Packet.0[Bitcnt]=0
ENDF
NFRA=Packet & %01111111
R_Dev=(Packet >>7) & %00011111
NEXT
RETURN
fin:
nformacin adicional Pic Basic Pro RECEPCON DATOS CONTROL REMOTO SONY
Pgina 3 de 4
Autor: Alberto Valdez - Minibotics
3. Ahora, es necesario crear el programa principal, en el cul, se requiere agregar
(incluir) al inicio del programa, la rutina anteriormente descrita. Esto se logra
poniendo exactamente al inicio del programa, la instruccin NCLUDE seguida
del nombre del archivo o programa a agregar, creado con extensin BAS:

NCLUDE "NFRAN.bas

4. Antes de continuar, es necesario conectar fsicamente el sensor receptor
infrarrojo en el circuito (sensor para 38 KHz). En la rutina NFRAN, se
considera que la recepcin de esta seal infrarroja se lleva a cabo en el puerto
A, bit 3 (RA3) del PC16F876. Si se desea otra entrada diferente, deber
cambiarse en el programa anterior, en las instrucciones PULSN que hacen
referencia a esta entrada. A continuacin se muestra el diagrama de
conexiones:




























5. Despus de realizar lo anterior, se continua escribiendo el cdigo de programa
correspondiente a la aplicacin que se desea.



1 2 3
4
.
7
k
R2 R1
3
3
0
1
2
3
+
4.7F
+5V
0V
5
P
I
C
1
6
F
8
7
6
Sensor
Infrarrojo
Sensor
Infrarrojo
RA3
nformacin adicional Pic Basic Pro RECEPCON DATOS CONTROL REMOTO SONY
Pgina 4 de 4
Autor: Alberto Valdez - Minibotics
En este programa, se consideran las teclas POWER (genera valor 21), SLEEP
(54), MUTE (20), CH+ (16), CH-(17), VOL+ (18) y VOL-(19). Muestra en un LCD el
valor del cdigo del dispositivo de control remoto (R_Dev) y el cdigo de tecla
(NFRA). Si no recibe ningn valor, muestra siempre el valor 255.

Los valores, se guardan en la variable NFRA, contenida en la rutina NFRAN. El
valor de cdigo del dispositivo de control remoto, se guarda en la variable R_Dev.

Como ejemplo, se muestra a continuacin el siguiente programa:

NCLUDE "NFRAN.bas

'Configura LCD
DEFNE LCD_DREG PORTC
DEFNE LCD_DBT 0
DEFNE LCD_BTS 4
DEFNE LCD_RSREG PORTC
DEFNE LCD_RSBT 5
DEFNE LCD_EREG PORTC
DEFNE LCD_EBT 6
DEFNE LCD_LNES 2
PAUSE 500
LCDOUT 254,1

ADCON1 = %10001110 'RA0 = analgica, RA1-RA5 = digitales.

Ciclo:

GOSUB NFRAN ' Llama rutina para recibir seal R
LCDOUT 254,128,"Dato = ",#R_Dev," ",#infra," "
F NFRA=21 THEN TOGGLE portb
F NFRA=54 THEN TOGGLE portb.3
F NFRA=20 THEN TOGGLE portb.4
F NFRA=16 OR NFRA=17 OR NFRA=18 or NFRA=19 THEN portb = 0
PAUSE 150
GOTO Ciclo

END

También podría gustarte