Reporte Control Remoto

22
 BENEMÈRITA UNIVERSIDAD AUTÒNOMA DE PUEBLA FACULTAD DE CIENCIAS DE LA ELECTRÓNICA “CONTROL REMOTO INFRARROJO SONY”  Alumno: Zúñiga López José Alberto Aguilar Pérez Oscar Abelardo Pérez Romero ASIGNATURA: INTERFACES PROFESOR: M.C. ARROYO DIAZ SALVADOR ANTONIO Puebla de Zaragoza, a 7 de diciembre del 2008

Transcript of Reporte Control Remoto

Page 1: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 1/22

 

BENEMÈRITA UNIVERSIDAD AUTÒNOMA DEPUEBLA

FACULTAD DE CIENCIAS DE LA ELECTRÓNICA

“CONTROL REMOTO INFRARROJO SONY” 

Alumno:Zúñiga López José Alberto

Aguilar Pérez OscarAbelardo Pérez Romero

ASIGNATURA:

INTERFACES

PROFESOR:M.C. ARROYO DIAZ SALVADOR ANTONIO

Puebla de Zaragoza, a 7 de diciembre del 2008

Page 2: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 2/22

 

DECODIFICACION DE CONTROL REMOTOINFRARROJO SONY

El presente proyecto tiene como objetivo la decodificación de un control remoto

infrarrojo Sony con el fin de utilizarlo en aplicaciones diversas, en este caso se utilizo parapoder enviar comandos a una PC por el puerto serial utilizando el protocolo de

comunicación RS232 y la adquisición de los datos se hizo con un programa en Visual c++,

la decodificación se hizo con un PIC16f628 el cual, a su vez controla un carro a controlremoto de RF, este control remoto forma parte de un proyecto final el cual mas adelante se

describirá y se explicara el uso de este control remoto en dicho proyecto.

Para poder explicar como se llevo a cabo la decodificación del tren de pulsos delcontrol remoto es necesario explicar el protocolo de comunicación infrarroja de SONY,

cabe aclarar que para cada marca de equipos electrónicos existe un protocolo diferente, en

el caso de SONY es el RC-5.

Teoría de Operación 

Sony utiliza una codificación “bit-width”, es decir, un pulso alto de 2.6ms paraindicar elencabezado, seguido de un pulso bajo de 400µs y luego un pulso alto de 800µs o

de 1400µs para indicar un “0” o un “1” respectivamente. Normalmente a la salida de

cualquier modulo detector de IR la señal se muestra invertida, tal como se muestra en lafigura 2.

Page 3: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 3/22

 

La codificación Sony consiste en un código de 12 bits, los primeros 7 bits

corresponden al comando o tecla presionada y los últimos 5 bits corresponden a ladirección del dispositivo, ver Fig.3. La transmisión es realizada serialmente primero se

envía el comando partiendo de los bits menos significativos (LSB) y luego la dirección

del dispositivo partiendo igualmente de los LSB del mismo. Si se deja presionada una

tecla, la transmisión del comando y la dirección del dispositivo es repetitiva cada 25µs.

La siguiente tabla muestra las teclas más comunes del control remoto y el valor

en binario y decimal de cada comando. Esta tabla fue realizada utilizando un pequeño

hardware para captar las señales del control remoto y analizador lógico el cual resultamuy interesante ya que corre en Windows 98 y se pueden monitorear hasta cuatro señales

en tiempo real conectadas al puerto paralelo de la pc . En el analizador lógico podemos

observar el encabezado seguido de 12 bits. Nuestro interés se centra en los primeros 7 bitsque corresponden al comando; se le agrega un octavo bit puesto a cero para completar un

byte y así poder trabajar mejor a nivel del software. La dirección del dispositivo son cinco

bits igual para todos los comandos y que identifica, como su nombre lo indica, aldispositivo o control remoto. Este campo no es de interés práctico en el presente trabajo.

Page 4: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 4/22

 

 

COMANDO BINARIO DECIMAL1 00000001 0

2 1000000 1

3 0100000 2

4 1100000 3

5 0010000 4

6 1010000 5

7 0110000 6

8 1110000 7

9 0001000 8

0 1001000 9

Volumen + 0100100 18

Volumen - 1100100 19Chanel + 0000100 16

Chanel - 1000100 17

Enter 1101000 11

Flecha up 0010111 116

Flecha down 1010111 117

Flecha right 1100110 51

Flecha left 0010110 52

ANALIZADOR LOGICO

Se me hizo necesario el uso de un analizador lógico para poder ver las señales que

se reciben y mandaban por el puerto en cada momento, pero como no tengo uno ni dineropara comprármelo, me tuve que montar uno con un AMD K6 viejo que tenía en casa y con

ayuda del programa Logic Analyzer de Logixell.

He aquí algunas fotos de mi mesa en pleno desarrollo y algunas capturas del analizador en

el AMD K6.

Page 5: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 5/22

 

 

Page 6: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 6/22

 

 

Detección de luz infrarroja 

La detección de luz infrarroja la podemos realizar a través de los denominados

módulos IR. Estos módulos de IR son capaces de detectar una señal codificadamodulada normalmente a 38Khz. La modulación se realiza para evitar la falsa

información que produce la luz infrarroja ambiental. Los módulos infrarrojos constan de3 pines: señal, común y VCC.

Fig. 4 Modulo Detector de IR Radio

Hardware 

El hardware diseñado para este proyecto se muestra en la figura 5. En el

podemos destacar la comunicación vía serial conectado al MAX232 para hacer laconversión de voltajes entre RS232 y TTL conectados al puerto B del

microcontrolador cuyo fin es visualizar el comando recibido en binario. El módulo IR es

conectado al pin RB5 el cual se configura como entrada en el microcontrolador. El PinMCLR el cual esta desactivado y con el oscilador interno activado. El módulo IR

utilizado es similar al presentado en la figura 4. La frecuencia de trabajo es de 4Mhz y

todo el circuito es alimentado con +5 voltios.

Integrado MAX232: Los circuitos con letra T son"Transmitters", que trasladan nivel TTL/CMOS en su

entrada a nivel RS232 en su salida. Los circuitos con letra

R son "Receivers", que trasladan señales RS232 en suentrada (que pueden ser de hasta +30/-30 V) a nivel

TTL/CMOS en su salida.

Page 7: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 7/22

 

 

Distribución de patas (con sus funciones) del PIC 16F628A.

El PIC 16F84A puede estar muy bien como elección para comenzar, pero la única razón

que va quedando para hacerlo es que la mayoría de los ejemplos de programa y de circuitoque se encuentran por allí están realizados sobre él. En base a lo dicho en el párrafo

anterior, entonces el PIC 16F628A es igual de elegible, ya que es un reemplazo

prácticamente directo de nuestro famoso microcontrolador "de batalla". ¿Pero por quécambiar, si ambos están disponibles en el mercado? Por una razón muy simple: el PIC16F628A tiene más memoria de programa (el doble), más RAM, más EEPROM, más

modos de uso, más timers, y más prestaciones, incluyendo la que aprovechamos en este

diseño, el puerto serie implementado por hardware.

COMPARACIÓN 

Page 8: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 8/22

 

El microcontrolador se comunica utilizando su puerto serie. He programado este

puerto a una velocidad de 9600 baudios, un formato de dato de 8 bits, sin paridad, un bit deparada, y sin ningún control de flujo.

HABLEMOS DEL SOFTWARE:

Hay dos programas hechos en ensamblador en los cuales me base para hacer el

programa del pic, a continuación muestro los dos programas y finalmente el programa para

el pic el cual por las prisas fue echo en Pic basic Pro.

Page 9: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 9/22

 

 Software ;********************************************************************** ;  Programa para decodificar un tren de pulsos codificados en  * ;  formato Sony para el Microcontrolador PIC16F84 @ 4Mhz.  * ;  * ;  Este programa es una adaptación del programa del autor Jim Nagy  * ;  presentado en el articulo DS40160A/6_007 Michochip Technology Inc.* ;  * ;  * ;********************************************************************** ;  * ;  Filename:  decosony.asm  * ;  Date:  20/08/2001  * ;  File Version:  1.0  * ;  * ;  Author:  Carlos A. Narvaez V.  * ;  Company: Universidad de Oriente  * ;  * ;  * ;********************************************************************** 

list  p=16F84 #include <p16F84.inc> 

__CONFIG  _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC 

;******* Eques del Programa 

Zero  EQU  2 Carry  EQU  0 IR  EQU  4  ; RA4  input IR 

;******* Definición de las teclas del Control Remoto 

Power  EQU  0x15 

ChanelL  EQU  0x11 ChanelP  EQU  0x10 TvVtr  EQU  0x4A Rew 

EQU  0x1B Play  .EQU  0x1A FF 

EQU  0x1C Stop 

EQU  0x18 Pause  EQU  0x19 

;******* Definición de Variables 

Temp  EQU  0x0D CntrLo  EQU  0x0E  ;  Contador  de  tiempo  (low byte) CntrMid EQU  0x0F  ;  (middle byte) CntrHi  EQU  0x10  ;  (high byte) BitCnt  EQU  0x11  ; Contador de bits Command  EQU  0x12  ; Ultimo comando recibido 

ORG  0x000  ; vector reset del procesador goto  init  ; ir a comienzo del programa 

Page 10: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 10/22

 

;  Subrutinas ; ;********************************************************************** ;  Delay ;  Espera por aproximadamente W mseg y retorna ;**********************************************************************Delay  CLRF  Temp d1  NOP 

DECFSZ 

Temp,F 

Lazo 

255 

4uS GOTO  d1 MOVWF  Temp  ; repita el lazo W veces DECFSZ Temp,W GOTO  Delay RETLW 0 

;********************************************************************** ;  GetaByte espera hasta 2 segundos por 12 bits. Los datos ;  Sony son enviados como 7 bits del comando y 5 bits ;  del código de dispositivo, en ambos casos los LSB ;  primero. Sólo necesitamos el comando de 7 bit al cual ;  agregamos un octavo bit puesto a cero para completar ;  un byte ;**********************************************************************GetaByte 

CLRF  CntrLo  ; reset contadores 

MOVLW 

0x80 

MOVWF  CntrMid CLRF  CntrHi 

gb1  INCF  CntrLo,F  ; Espera por una señal BTFSC  STATUS,Zero INCF CntrMid,FBTFSC  STATUS,Zero INCF CntrHi,F MOVLW  D'3'  ; pero no mas de 2 seg SUBWF  CntrHi,W  ; (2.5*256*256*12us ~ 2seg) BTFSC  STATUS,Carry GOTO  main  ; aborte si el tiempo se excedeBTFSC  PORTA,IR  ; sino cheque a ver si hay señal Goto  gb1 ; y sino, loop 

;  Hay señal ; 

CALL  HdrCheck  ; ver si es un encabezado BTFSS  STATUS,Carry GOTO  gb1 

; ;  Es un encabezado...continue ;  Lee los primeros 7 bit. Resultado en Command 

MOVLW  D'7'  ; preparado para recibir 7 bits MOVWF  BitCnt CLRF

  Command gb2  CALL  GetaBit 

RRF  Command,F DECFSZ BitCnt,F GOTO  gb2 RRF  Command,F  ; agrega un 8 bit BCF  Command,7  ; puesto a cero 

;  Lee 5 bit Código del dipositivo pero los ignora 

Page 11: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 11/22

 

; MOVLW  D'5' MOVWF  BitCnt  ; Preparado para recibir 5 

bits gb3  CALL  GetaBit DECFSZ BitCnt,F GOTO  gb3 

Como 

test 

final, 

asegurese 

que 

son 

solo 

12 

bits 

los 

recibidos 

CLRF  CntrLo  ; Reset contadores CLRF  CntrMid 

gb4  BTFSS  PORTA,IR  ; Chequee que no hay señal por el ; resto del 

frame GOTO  main  ; Si hay aborte INCF  CntrLo,F BTFSC  STATUS,Zero INCF  CntrMid,F MOVLW  D'4'  ; Cheque cuanto he esperado SUBWF  CntrMid,W  ;  (4*256*10us = 10ms) BTFSS  STATUS,Carry GOTO  gb4  ; loop hasta que los 10ms expiren RETLW  0 

;********************************************************************** 

GetaBit Determina

 el valor

 del

 bit

 que

 se esta

 recibiendo.

 

;  Retorna con carry = 1 si el bit = 1 y carry = 0 si el bit = 0 ;  Los bits Sony son codificados como 400us sin portadora (low) seguido ;  de 800us de portadora (high) para un "0" o 1400us para un "1". ;**********************************************************************GetaBit CLRF  CntrLo  ; Reset contador b1  INCF  CntrLo,F  ; determne tiempo de no portadora 

MOVLW  D'100' SUBWF  CntrLo,W  ; permite hasta 800us (100*8us) BTFSC  STATUS,Carry GOTO  main  ; aborte si es mayor BTFSC  PORTA,IR  ; mantengase contando portadora viene GOTO  b1 

;  Un espacio menor que 800us fue recibido ; 

MOVLW  D'25'  ; Asegurese que es mas grande que 

SUBWF  CntrLo,W  ; 25*8us = 200us BTFSS  STATUS,Carry GOTO  main  ; aborte si es menor 

;  Determine la longitud del pulso IR que esta siendo recibido 

CLRF  CntrLo b2  INCF  CntrLo,F  ; Cuente este pase 

MOVLW  D'225' SUBWF  CntrLo,W  ; Permita hasta 1800us (255*8us) BTFSC  STATUS,Carry GOTO  main  ; Aborte si es mayor BTFSS  PORTA,IR  ; siga contando hasta final pulso GOTO  b2 

Page 12: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 12/22

 

;  Señal presente 

MOVLW  D'50'  ; Asegurese que es mayor que SUBWF  CntrLo,W  ; 50*8us = 400us BTFSS  STATUS,Carry GOTO  main  ; Si no aborte 

;  Que es: un 1 o un 0 

MOVLW  D'125'  ; Compare con un ancho de 1000us SUBWF  CntrLo,W  ; Carry 1 o 0 RETLW  0 

End

SEGUNDO PROGRAMA SOBRE COMUNICACION SERIAL ENTRE LACOMPUTADORA Y EL PIC16F628.

;*******************************************************************; INTERFAZ SERIE RS232 - ECO Y DISPLAY EN LEDS

; CONVERTIDOR SERIE RS232 - PARALELO 8 BITS

;*******************************************************************

LIST P=16F628, R=DEC ; Usar el PIC16F628 y sistema decimal

#include "P16F628A.INC" ; Incluye datos de PIC16F628A

 — CONFIG _CP_OFF & _WDT_OFF & _LVP_OFF & _PWRTE_ON &

_INTRC_OSC_NOCLKOUT & _MCLRE_OFF

;*******************************************************************

; CONFIGURACION;*******************************************************************

; El PIC es configurado para usar todas las entradas y salidas; posibles = 16. Por eso no se usa el oscilador con cristal externo,

; lo que deja libres las patas 15 y 16 para usar como bits de puerto.

; Se define el clock interno a 4 MHz. No se usa el master reset

; (pata 4), que queda convertida en el Puerto A, bit 5 (entrada).

;*******************************************************************

; VARIABLES;*******************************************************************

contador EQU 0x28 ; variabledato_serie EQU 0x29 ; dato serie desde la PC

;*******************************************************************

Page 13: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 13/22

 

ORG 0x000 ; El programa empieza en 0x000

;*******************************************************************

; Inhibe comparadores

;*******************************************************************

movlw 7

movwf CMCON ; CMCON=7 inhibir los comparadores

;*******************************************************************

; Inicializar Puertos;*******************************************************************

movlw b'00000000' ; valor inicial portA

movwf PORTAmovlw b'00000000' ; valor inicial portB

movwf PORTB

bsf STATUS,RP0 ; Pág 1 RAM

movlw b'00000000'movwf TRISA ; salidas (para mostrar el dato en LEDS)

; de estas salidas, no usaremos

; PORTA 4, que tiene salida open drain, y; PORTA 5, que sólo puede ser entrada

movlw b'11001011' ; RB0 entrada

; RB1 (RX) = entrada; RB2 (TX) = salida

; RB3 = entrada

; RB2 = salida del bit 4 del dato a LEDS; RB5 = salida del bit 5 del dato a LEDS

; RB6 y RB7 = entradas

movwf TRISB

;*******************************************************************

; BAUD RATE para la comunicación RS232

; y otras definiciones para USART;*******************************************************************

; Baud Rate = 9600, Sin Paridad, 1 Bit parada

;movlw 0x19 ; 0x19=9600 bps (0x0C=19200 bps)

movwf SPBRG

movlw b'00100100' ;movwf TXSTA ; habilita la transmisión Async

bcf STATUS,RP0 ; RAM PAGE 0

Page 14: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 14/22

 

 

movlw b'10010000' ; habilita de recepción Asyncmovwf RCSTA

;*******************************************************************

; TIEMPO DE ESTABILIZACION;*******************************************************************

clrf contador

estab decfsz contador,F

goto estab

movf RCREG,W

movf RCREG,W

movf RCREG,W ; vacía el buffer de recepción

call Bienvenida ; envía mensaje de bienvenida

;*******************************************************************

; LAZO PRINCIPAL

;*******************************************************************

loop

clrwbtfss PIR1,RCIF ; (5) se fija si hay dato RS232

goto loop ; no, no llegó

call recibeRS232 ; sí, hay

movwf dato_serie ; guarda dato (para uso de cualquier rutina)call enviaRS232 ; envía el eco a la PC

call muestra ; muestra el caracter recibido en LEDS

goto loop

;*******************************************************************

; RECIBE CARACTER SERIE - RS232 - DESDE LA PC;*******************************************************************

recibeRS232

movf RCREG,W ; guarda dato recibido en acumuladorreturn

;*******************************************************************; ENVIA CARACTER SERIE - RS232 - A LA PC Y ESPERA A QUE HAYA SALIDO

;*******************************************************************

enviaRS232

movwf TXREG ; envío el dato en acunulador w

bsf STATUS,RP0 ; Pág 1 RAM

Page 15: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 15/22

 

Espere btfss TXSTA,TRMT ; transmision completa si es alto

goto Esperebcf STATUS,RP0 ; Pág 0 RAM

return

;*******************************************************************; MUESTRA DATO

;*******************************************************************

muestra

movf dato_serie,w ; recupera el dato guardadomovwf PORTA ; exhibe el dato en LEDS en PORTA

btfss dato_serie,4 ; pero, como el PORTA tiene el bit 4 que es

bcf PORTB,4 ; open drain, nos conviene poner

btfsc dato_serie,4 ; el bit 4 del dato en otra salida;bsf PORTB,4 ; lo hacemos en el bit 4 del PORTB.

btfss dato_serie,5 ; y , como el PORTA tiene el bit 5 que esbcf PORTB,5 ; sólo usable como entrada, tenemos que ponerbtfsc dato_serie,5 ; el bit 5 del dato en alguna salida;

bsf PORTB,5 ; lo hacemos en el bit 5 del PORTB.

return

;*******************************************************************

; MENSAJES;*******************************************************************

Bienvenida

; los primeros caracteres 0x00 son; para estabilización del circuito

movlw 0x00

call enviaRS232movlw 0x00

call enviaRS232

movlw 0x00call enviaRS232movlw 0x00

call enviaRS232

movlw 0x00call enviaRS232

call msgCR

movlw 'H'call enviaRS232

movlw 'o'

call enviaRS232movlw 'l'

call enviaRS232

movlw 'a'

Page 16: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 16/22

 

call enviaRS232

movlw ' 'call enviaRS232

movlw 'a'

call enviaRS232

movlw 'm'call enviaRS232

movlw 'i'call enviaRS232

movlw 'g'

call enviaRS232movlw 'o'

call enviaRS232

msgCR

movlw 0x0Dcall enviaRS232

movlw 0x0Agoto enviaRS232

END

PROGRAMA PRINCIPAL DEL PIC16F628 PARA LA TARJETA RECEPTORA-DECODIFICADORA

'****************************************************************'* Name : decoder infra.BAS *'* Author : José Alberto Zúñiga López *'* Notice : Copyright (c) 2008 [select VIEW...EDITOR OPTIONS] *'* : All Rights Reserved *'* Date : 17/11/2008 *'* Version : 1.0 *'* Notes : trabajando al 100% *'* : *'****************************************************************'INCLUDE "bs1defs.bas"

w0 VAR wordb0 VAR WORDb1 VAR WORDb2 VAR WORDb3 VAR WORDb4 VAR WORDb5 VAR WORDb6 VAR WORD

Page 17: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 17/22

 

b7 VAR WORDb9 var wordTRISB = %00000000TRISC = %00000000TRISD = %00000001

Main:

PulsIn PORTD.0,0,w0IF w0< 200 Then MainPulsIn PORTD.0,0,b0PulsIn PORTD.0,0,b1PulsIn PORTD.0,0,b2PulsIn PORTD.0,0,b3PulsIn PORTD.0,0,b4

PulsIn PORTD.0,0,b5PulsIn PORTD.0,0,b6PulsIn PORTD.0,0,b7GoSub detectairGoTo Main

detectair:IF b0<80 Thenb0=0Elseb0=1

EndIFIF b1<80 Thenb1=0Elseb1=1EndIF

IF b2<80 Thenb2=0Elseb2=1EndIF

IF b3<80 Thenb3=0Elseb3=1EndIF

Page 18: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 18/22

 

IF b4<80 Thenb4=0Elseb4=1EndIF

IF b5<80 Thenb5=0Elseb5=1EndIF

IF b6<80 Thenb6=0Elseb6=1

EndIFb7=0

b9=(128*b7)+(64*b6)+(32*b5)+(16*b4)+(8*b3)+(4*b2)+(2*b1)+(1*b0)

IF b9=0 Thenhigh PORTB.7Elselow PORTB.7EndIF

IF b9=1 Thenhigh PORTB.6Elselow PORTB.6EndIF

IF b9=2 Thenhigh PORTB.5Elselow PORTB.5EndIF

IF b9=3 Thenhigh PORTB.4Elselow PORTB.4EndIF

IF b9=4 Then

Page 19: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 19/22

 

high PORTB.3Elselow PORTB.3EndIF

IF b9=5 Thenhigh PORTB.2Elselow PORTB.2EndIF

IF b9=6 Thenhigh PORTB.1Elselow PORTB.1EndIF

IF b9=7 Thenhigh PORTB.0Elselow PORTB.0EndIF

IF b9=8 Thenhigh PORTD.7Elselow PORTD.7

EndIFIF b9=9 Thenhigh PORTD.6Elselow PORTD.6EndIF

IF b9=18 Thenhigh PORTD.5Elselow PORTD.5EndIF

IF b9=19 Thenhigh PORTD.4Elselow PORTD.4EndIF

Page 20: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 20/22

 

IF b9=16 Thenhigh PORTC.7Elselow PORTC.7EndIF

IF b9=17 Thenhigh PORTC.6Elselow PORTC.6EndIF

IF b9=11 Thenhigh PORTC.5Elselow PORTC.5

EndIFIF b9=116 Thenhigh PORTC.4Elselow PORTC.4EndIF

IF b9=117 Thenhigh PORTD.3Else

low PORTD.3EndIF

IF b9=51 Thenhigh PORTD.2Elselow PORTD.2EndIF

IF b9=52 Thenhigh PORTD.1Elselow PORTD.1EndIF

returnend

Page 21: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 21/22

 

APLICASION EN VISUAL C++ PARA RESIVIR LOS DATO VIA PUERTOSERIAL DE LA TARJETA DECOFIFICADORA.

Page 22: Reporte Control Remoto

5/10/2018 Reporte Control Remoto - slidepdf.com

http://slidepdf.com/reader/full/reporte-control-remoto 22/22

 

CONCLUSIONES:

Se cumplió exitosamente con el propósito de esta practica, el único inconveniente que se

encontró fue con el programa en Visual c++ para poder recibir los datos vía serial, no se

pudo encontrar la variable en la cual se guardan los datos recibidos de la tarjeta

decodificadora, por lo tanto no se pudo manipular aplicaciones dentro de Windows con estatarjeta, lo que si se pudo es manipular un carrito a control remoto de RF pudiéndolo

controlar con las siguientes teclas coincidiendo con las flechas su movimiento.

ADELANTE

ATRAS

IZQUIERDA DERECHA