Académique Documents
Professionnel Documents
Culture Documents
ASIGNATURA MICROCONTROLADORES
PROYECTO FINAL
TEMA: CARRO CONTROLADO POR RADIO FRECUENCIA
Profesor: Ing. Danny Sotomayor
INTEGRANTES
Angelo Rodrguez
Guillermo Rodrguez
SANGOLQU 07-08-2014
1.
2. OBJETIVO(S)
2.1.
Control de giro de un carro y velocidad con pwm (modulacin de ancho de pulso),
a travs de mdulos RF(radio frecuencia ).
2.2.
Especficos
Aplicar los conocimientos adquiridos sobre el PWM
Determinar el alcance mximo de la comunicacin por radio frecuencia.
Realizar un programa tal que pueda enviar y receptar datos binarios para el
control de giro y velocidad del carro
3. MARCO TEORICO
DATOS DE FBRICA
Voltaje de funcionamiento: 3-12v
Frecuencia de funcionamiento: 315, mhz 433.92( otras frecuencias puede ser personalizado)
Corriente de espera: 0ma
Actual: 20-28ma
La distancia de transmisin:> 500m( abierto a recibir sensibilidad at-103dbm por encima de junta
distancia)
Potencia de salida: dbm 16( 40mw)
Tasa de transferencia:< 10kbps
Nuevamente, las patas 1 a 8 eligen la direccin (que tendra que ser igual en el transmisor y
receptor para lograr comunicacin), las patas 10 a 13 son los datos recibidos (pueden ser
conectados a LEDs o cargas siempre que la corriente no supere 5mA), la pata 14 deber ser
conectada a la salida del mdulo de recepcin de RF, las patas 15 y 16 necesitan ser conectadas a
una resistencia de 47 Kilohm para generar la seal de clock interna, la pata 17 dice si la recepcin
fue correcta o no.
4. DIAGRAMA DE BLOQUES
PR2=.255
TRISC= .0 (Pin C1 como salida)
CCPR2L = .0
CCP2CON=0XCH
T2CON = 0x06H
Y RECEPTOR CON
6. DIAGRAMA ELECTRNICO.
7. CLCULOS
Periodo PWM
PWM = [(PR2+1)*4T*(TMR2 Prescale Value)
PWM = (255+1)*1us*16
PWM= 4096us = 4ms
PWM DUTY CITE
PWMDC=(CCPR2L:CCPICON<5:4>)* TOSC*(TMR2 PRESCALE VALUE)
PWMDC = 1*0,25*16
PWMDC = 4us
8. DIAGRAMA DE FLUJO:
Transmisor:
Receptor:
9. PROGRAMA:
TRANSMISOR
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
LIST
P=16F84A
INCLUDE <P16F84A.INC>
ORG
RADIX
00H
HEX
;____________________________CONFIGURACIN______________________________________
________________
CONFI
BSF
STATUS,RP0
;Banco1
MOVLW
.255
MOVWF TRISB
;Puerto B teclado
MOVLW .0
MOVWF TRISA
BCF
OPTION_REG,7 ;Conecta todas las resistencias Pull-Up
BCF
STATUS,RP0
;Banco 0
CLRF
PORTB
CLRF
PORTA
;_________________________________MAIN___________________________________________
________
INICIO
BSF
PORTA,0
BSF
PORTA,1
BSF
PORTA,2
BSF
PORTA,3
ADELANTE
BTFSC
GOTO
PORTB,0
ATRAS
BSF
BSF
BSF
BCF
PORTA,0
PORTA,1
PORTA,2
PORTA,3
ATRAS
BTFSC
PORTB,1
GOTO
BSF
BSF
BCF
BSF
DERECHA
PORTA,0
PORTA,1
PORTA,2
PORTA,3
DERECHA
BTFSC
GOTO
BSF
BCF
BSF
BSF
PORTB,2
IZQUIERDA
PORTA,0
PORTA,1
PORTA,2
PORTA,3
IZQUIERDA
BTFSC
GOTO
BCF
BSF
BSF
BSF
PORTB,3
VELOCIDAD_MAX
PORTA,0
PORTA,1
PORTA,2
PORTA,3
VELOCIDAD_MAX
BTFSC
GOTO
BSF
BSF
BCF
BCF
PORTB,4
VELOCIDAD_MIN
PORTA,0
PORTA,1
PORTA,2
PORTA,3
VELOCIDAD_MIN
BTFSC
GOTO
BCF
BCF
PORTB,5
CONTINUAR
PORTA,0
PORTA,1
BCF
BSF
PORTA,2
PORTA,3
CONTINUAR
BTFSC
GOTO
BSF
BSF
BSF
BSF
PORTB,6
DETENER
PORTA,0
PORTA,1
PORTA,2
PORTA,3
DETENER
BTFSC
GOTO
BCF
BCF
BCF
BCF
PORTB,7
ADELANTE
PORTA,0
PORTA,1
PORTA,2
PORTA,3
GOTO INICIO
END
RECEPTOR
List
p=16f877a;tipo de procesador
INCLUDE
"P16F877A.Inc"; librerias del registro del pic
__CONFIG(0x3f71);Grabar desde el Programa del PICKIT
DATO
EQU 20H
ORG
00H
;____________________________CONFIGURACIN____________________________
CONFI
CLRF
STATUS
BSF
STATUS,RP0
;Banco1
MOVLW
.255
MOVWF TRISB
;Puerto B teclado
MOVLW .0
MOVWF TRISC
MOVLW .0
MOVWF TRISD
BCF
OPTION_REG,7 ;Conecta todas las resistencias Pull-Up
BCF
STATUS,RP0
;Banco 0
CALL
INICIA_PWM
CLRF
PORTC
CLRF
PORTB
CLRF
PORTD
;_________________________________MAIN_________________________________
INICIO
MOVLW .0
MOVWF CCPR2L
VELOCIDAD
LOOP
MOVLW
0xFF
MOVWF
MASQ
CALL
DETECTAR
SUBWF MASQ,1
BTFSS STATUS,Z
GOTO LOOP
BTFSC PORTB,6
GOTO INC
BTFSS
CALL
BTFSS
CALL
BTFSC
CALL
PORTB,7
ADELANTE
PORTB,6
ADELANTE
PORTB,5
ADELANTE
BTFSC
INC
PORTB,4
GOTO LOOP
INCFSZ CCPR2L,1
GOTO LOOP
RETURN
VELOCIDAD_MIN
LOOP1
MOVLW
0xFF
MOVWF
MASQ
CALL
DETECTAR
SUBWF MASQ,1
BTFSS STATUS,Z
GOTO LOOP1
BTFSS PORTB,6
GOTO DEC
;
;
;
;
;
BTFSS
GOTO
BTFSS
GOTO
BTFSC
GOTO
BTFSC
GOTO
PORTB,7
ADELANTE
PORTB,6
ADELANTE
PORTB,5
ADELANTE
PORTB,4
ADELANTE
MOVF
BTFSS
GOTO
DATO,0
PORTB,7
DEC
BTFSS
GOTO
BTFSS
GOTO
PORTB,7
ADELANTE
PORTB,6
ADELANTE
GOTO
LOOP1
DEC
DECFSZ CCPR2L,1
GOTO LOOP1
GOTO DEC
RETURN
;___________________________________PWM_________________________________________
_______
INICIA_PWM
BSF
STATUS,RP0
MOVLW .255
MOVWF PR2
;Establece periodo del PWM
BCF
TRISC,1
;Pin C1 como salida
BCF
STATUS,RP0
CLRF
CCPR2L
MOVLW 0CH
MOVWF CCP2CON
MOVLW 06H
MOVWF T2CON
RETURN
;Habilita Timer 2
;__________________________________TECLADO_______________________________________
_______
DETECTAR
CLRF
BTFSS
GOTO
BTFSS
GOTO
BTFSS
GOTO
BTFSS
GOTO
RETLW
PORTB
PORTB,7
REBOTE
PORTB,6
REBOTE
PORTB,5
REBOTE
PORTB,4
REBOTE
0x0
CALL
BTFSS
RETLW
BTFSS
RETLW
BTFSS
RETLW
BTFSS
RETLW
DELAY_100ms
PORTB,7
0xFF
PORTB,6
0xFF
PORTB,5
0xFF
PORTB,4
0xFF
REBOTE
;pausa de 20 milisegundos
;lee rengln 1,2,3,A
;tecla presionada, retorna con w=0xFF
;lee rengln 4,5,6
;tecla presionada, retorna con w=0xFF
;lee rengln 7,8,9
;tecla presionada, retorna con w=0xFF
;lee rengln *,0,#
;tecla presionada, retorna con w=0xFF
RETLW 0x0
DELAY_100ms
MOVLW
MOVWF
REP1
REP2
.100
CONT1
;________________________________________________________________________________
______
ADELANTE
BTFSC
GOTO
BTFSC
GOTO
BTFSC
GOTO
PORTB,7
ADELANTE1
PORTB,6
ADELANTE1
PORTB,5
ADELANTE1
CALL
VELOCIDAD_MIN
BTFSS
GOTO
BTFSS
GOTO
BTFSC
GOTO
BTFSC
GOTO
PORTB,7
ADELANTE2
PORTB,6
ADELANTE2
PORTB,5
ADELANTE2
PORTB,4
ADELANTE2
ADELANTE1
CALL
VELOCIDAD
BTFSC
GOTO
BTFSS
GOTO
BTFSS
GOTO
BTFSS
GOTO
PORTB,7
ATRAS
PORTB,6
ATRAS
PORTB,5
ATRAS
PORTB,4
ATRAS
ADELANTE2
;--------------ATRAS...ADELANTE----BCF
BSF
BCF
BSF
PORTC,2
PORTC,3
PORTC,4
PORTC,5
ATRAS
BCF
BCF
PORTD,7
PORTD,6
BTFSC
GOTO
BTFSC
GOTO
BTFSC
GOTO
PORTB,7
ATRAS1
PORTB,6
ATRAS1
PORTB,5
ATRAS1
CALL
VELOCIDAD_MIN
BTFSS
GOTO
BTFSS
GOTO
BTFSC
GOTO
BTFSC
GOTO
PORTB,7
ATRAS2
PORTB,6
ATRAS2
PORTB,5
ATRAS2
PORTB,4
ATRAS2
ATRAS1
CALL
VELOCIDAD
BTFSS
GOTO
BTFSC
GOTO
BTFSS
GOTO
BTFSS
GOTO
PORTB,7
DERECHA
PORTB,6
DERECHA
PORTB,5
DERECHA
PORTB,4
DERECHA
ATRAS2
;-----------ADELANTE......ATRAS-------------BSF
PORTC,2
BCF
PORTC,3
BSF
PORTC,4
BCF
PORTC,5
DERECHA
BTFSC
GOTO
BTFSC
GOTO
BTFSC
GOTO
PORTB,7
DERECHA1
PORTB,6
DERECHA1
PORTB,5
DERECHA1
CALL
VELOCIDAD_MIN
BTFSS
GOTO
BTFSS
GOTO
BTFSC
GOTO
BTFSC
GOTO
PORTB,7
DERECHA2
PORTB,6
DERECHA2
PORTB,5
DERECHA2
PORTB,4
DERECHA2
DERECHA1
CALL
VELOCIDAD
BTFSS
GOTO
BTFSS
GOTO
BTFSC
GOTO
BTFSS
GOTO
PORTB,7
IZQUIERDA
PORTB,6
IZQUIERDA
PORTB,5
IZQUIERDA
PORTB,4
IZQUIERDA
DERECHA2
BCF
BSF
BCF
BCF
PORTC,2
PORTC,3
PORTC,4
PORTC,5
IZQUIERDA
MIN3
BTFSC
PORTB,7
GOTO IZQUIERDA1
BTFSC PORTB,6
GOTO IZQUIERDA1
BTFSC PORTB,5
GOTO IZQUIERDA1
CALL
VELOCIDAD_MIN
BTFSS
GOTO
BTFSS
GOTO
BTFSC
GOTO
BTFSC
GOTO
PORTB,7
IZQUIERDA2
PORTB,6
IZQUIERDA2
PORTB,5
IZQUIERDA2
PORTB,4
IZQUIERDA2
CALL
VELOCIDAD
IZQUIERDA1
IZQUIERDA2
BTFSS
GOTO
BTFSS
GOTO
BTFSS
GOTO
BTFSC
GOTO
BCF
BCF
BCF
BSF
PORTB,7
DETENER
PORTB,6
DETENER
PORTB,5
DETENER
PORTB,4
DETENER
PORTC,2
PORTC,3
PORTC,4
PORTC,5
DETENER
BTFSC
GOTO
BTFSC
GOTO
BTFSC
GOTO
BTFSC
GOTO
BCF
PORTB,7
ADELANTE
PORTB,6
ADELANTE
PORTB,5
ADELANTE
PORTB,4
ADELANTE
PORTC,1
GOTO INICIO
END
11. BIBLIOGRAFIA
http://zygzax.com/tag/xy-fst/ [1].
http://spanish.alibaba.com/wholesale/product-gs/fs1000a-xy-fst-433mhz-rfmodule-1801661832.html [2].
http://gzaloprgm.com.ar/rfht12/ [3].