Calculando el periodo segun la formula:
Periodo = [PR2 +1] * 4 * TOSC * TMR2 valor del prescaler
PR2 = 255
TOSC = 50 para el cristal de 20 Mhz
TMR2 = 16
Periodo = [255+1]*4*(50*10^-9)*16 = 0.0008192
En Hz seria 1 / 0.0008192 = 1220.703 dividido por 10^3
nos qedaria 1.220703 Khz que es el valor de la hoja de datos.
Para calcular el ancho del pulso o la duracion del ciclo hay otra formula
en la hoja de datos podran ver con mas detalle, en este caso el registro
CCPR1L lo cargamos con valores conocidos ^^ .
El codigo seria:
list p=16f873a
include "p16f873a.inc"
__config _HS_OSC & _WDT_OFF & _LVP_OFF &_DEBUG_OFF & _CPD_OFF &_PWRTE_ON &_LVP_OFF &_BODEN_ONcblock 0x20
ContadorA
ContadorB
ContadorC
endc
org 0h
goto Inicio
org 05h
;-------------------------------------------------------------------------------------------
Inicio bsf STATUS,RP0
movlw B'00000000'
movwf PORTC
bcf STATUS,RP0
;PWM
clrf T2CON
clrf TMR2
clrf INTCON
movlw 0x07 ;B'00000111'
movwf CMCON
bsf STATUS,RP0
clrf PIE1
bcf STATUS,RP0
clrf PIR1
bsf STATUS,RP0
movlw B'11111111'
movwf PR2 ;Periodo
bcf STATUS,RP0
movlw B'00000010'
movwf CCPR1L
movlw B'00000110'
movwf T2CON ;1:16
movlw B'00001100'
movwf CCP1CON ;Modo PWM
bsf T2CON,TMR2ON
;-------------------------------------------------------------------------------------------
doloop movlw D'64'
movwf CCPR1L
call retraso_0.5_seg
movlw D'128'
movwf CCPR1L
call retraso_0.5_seg
movlw D'255'
movwf CCPR1L
call retraso_0.5_seg
goto doloop
;-------------------------------------------------------------------------------------------
; Código de retardo generado por PikLoops (mié ene-2008-09 00:51:59)
; Tiempo de retardo = 0.49999620 con Osc = 20.00000000MHz
retraso_0.5_seg
movlw D'13'
movwf ContadorC
retraso_0.5_seg_bucle
call sub_delay_0.5_seg
decfsz ContadorC,1
goto retraso_0.5_seg_bucle
return
sub_delay_0.5_seg
movlw D'250'
movwf ContadorB
movlw D'188'
movwf ContadorA
sub_delay_0.5_seg_bucle
decfsz ContadorA,1
goto sub_delay_0.5_seg_bucle
decfsz ContadorB,1
goto sub_delay_0.5_seg_bucle
return
;-------------------------------------------------------------------------------------------
end
;-------------------------------------------------------------------------------------------
1 comentario:
que mierda es esto?!?! donde estan las fotos con minitas, en el boliche, y todas las boludeces que vemos en los blogs?!?!?! que carajos es esto?!?!? un autito hecho de rasty?!?!?! una cotorra?!?!?!?! pero que carajos!?!!?!?
Publicar un comentario