viernes, 30 de mayo de 2014

CONFIGURACIÓN PWM

PRESENTADO POR: Wilmer Alejandro Sierra                          
                                Fabian Eduardo  García
correos:                    wilmer_5050@hotmail.com
                                fabigarcia.48@hotmail.com
LABORATORIO N°5
       CONFIGURACIÓN PWM 



EN ESTE LABORATORIO CONFIGURAMOS EL PWM DEL MICRO CONTROLADOR PARA CONTROLAR  LA VELOCIDAD DE GIRO DE UN  MOTOR DC . YA QUE EL PWM NOS PERMITE LA MODULACIÓN  POR ANCHO PULSOS



MATERIALES DEL CIRCUITO
  1. PROTOBOAR
  2. PIC18F452
  3. CRISTAL CUARZO 20MHZ
  4. 8 LEDS
  5. 2 CONDENSADORES DE 22 PICOS(CERAMICOS
  6. UNA RESISTENCIA DE 10K Y  UNA DE 330 OHM
  7. UN PULSADOR 
  8. UN MOTOR DE 5V
CODIGO:

list p = 18F452
#include<p18F452.inc>
CBLOCK 0x0A
TAQ
BUFFER_ENVIO
ENDC
org 0x00
rcall CONF_PUERTOS
rcall BORRAR_BASURA
rcall CONF_ADC
rcall CONF_TMR2
rcall CONF_PWM
rcall CONF_USART
;-----------------------------------------------------------------------------------------------------------------------------------------
rcall CONVERSION

PRINCIPAL
btfsc PIR1,5
rcall LEER_SERIAL
btfsc TXSTA,1
rcall ENVIAR
btfss ADCON0,2
rcall CONVERSION
rcall MOTOR 

bra PRINCIPAL
;-----------------------------------------------------------------------------------------------------------------------------------------
CONF_PUERTOS
; Esta rutina se emplea para configurar los pines del microcontrolador que se van a emplear.
; Los pines que se configuran con CERO (0) son salidas. Los pines que se configuran con UNO (1) son entradas
setf TRISA
clrf PORTC
clrf TRISB
clrf TRISD
;76543210
movlw b'10000000'
movwf TRISC
return
;-----------------------------------------------------------------------------------------------------------------------------------------
BORRAR_BASURA
; Esta rutina garantiza que los registros que se van a emplear inicien en Cero
clrf TAQ
clrf BUFFER_ENVIO
clrf PORTC
clrf ADRESH
clrf ADRESL
return
CONF_ADC
;Esta rutina configura el conversor Analogo Digital según los valores de la Hoja de especificaciones
;76543210
movlw b'01000001'
movwf ADCON0
;76543210
movlw b'00001110'
movwf ADCON1
return
;-----------------------------------------------------------------------------------------------------------------------------------------
CONF_USART
;76543210
movlw b'00100110'
movwf TXSTA
;76543210
movlw b'10010000'
movwf RCSTA
movlw d'25'
movwf SPBRG
return
;-----------------------------------------------------------------------------------------------------------------------------------------
CONVERSION
movff ADRESH,BUFFER_ENVIO
movlw d'20'
movwf TAQ
decfsz TAQ,F
bra $-2
bsf ADCON0,2
return
;-----------------------------------------------------------------------------------------------------------------------------------------
ENVIAR
movff BUFFER_ENVIO,TXREG
return
;-----------------------------------------------------------------------------------------------------------------------------------------
MOTOR

; Valor del Ciclo Util para el primer canal
movff PORTB,CCPR1L

; Valor del periodo de las Señal
MOVLW d'249'
MOVWF PR2

;76543210
MOVLW b'00001111'
MOVWF CCP1CON
;-----------------------------------------------------------------------------------------------------------------------------------------
LEER_SERIAL
movff RCREG,PORTB
movff RCREG,PORTD
bcf PIR1,5
return
;-----------------------------------------------------------------------------------------------------------------------------------------
CONF_TMR2
; El Pre y el Post Scaler están en una relacion 1:1

CLRF TMR2

;76543210
MOVLW b'00000100'
MOVWF T2CON
RETURN
;-----------------------------------------------------------------------------------------------------------------------------------------

;_____________________________________________________

CONF_PWM

movlw d'0'
movwf CCPR1L
movwf CCPR2L

movlw d'249'
movwf PR2
;76543210
movlw b'00001100'
movwf CCP1CON
movwf CCP2CON


return
;-----------------------------------------------------------------------------------------------------------------------------------------

end

No hay comentarios:

Publicar un comentario