Académique Documents
Professionnel Documents
Culture Documents
TECNOLOGICO DE TOLUCA
INGENIERA ELECTRNICA
Cruce por 0
REPORTE PPRCTICA
PRESENTA:
LUIS VIDAL ALVA DE LA CRUZ
RACIEL ANGELES SALAZAR
FRANCISCO RIVERA ALBA
Introduccin
En este documento se redacta la elaboracin y programacin de un PIC
cuya funcin ser, mandar una seal de salida en forma de pulso
unitario cada vez que una seal sinodal que entra en el PIC cruce por el
punto de referencia establecido, puesto que no puede cruzar el cero real
de positivo a negativo, esto se debe a que el PIC no manipula voltajes
negativos en entradas ni salidas, solo cero y Vcc, por lo tanto se debe
establecer un punto de referencia en Vcc que est en el rango de 0V a
5V, de preferencia en medio de este intervalo para aprovechar toda la
amplitud disponible.
Objetivo
Observar la forma en que opera una de las funciones bsicas del puerto PWM
del PIC18F4550 y trabajar con esta funcin.
Material
-
PIC 18F4550
Programador de Microcontroladores
Convertidor Digital/Analgico DAC0800
Resistencias y Capacitores
Oscilador, Cristal de Cuarzo a 20Mhz
Programa
Libreras y Configuraciones Principales
LIST P= 18F4550
INCLUDE <P18F4550.INC>
config PLLDIV = 1
;// Queremos 4MHz a la entrada del PLL,
cuya salida es de 96MHz => 20/5 = 4 (el PLL multiplca por 24 la f de entrada)
config CPUDIV = OSC1_PLL2 ;// Como el reloj se conecta al PLL de
96MHz, queremos que el pic trabaje a la mitad, es decir 48MHz, que es la max
del PIC
config USBDIV = 2
;// El reloj del USB viene del divisor que
est a la salida del PLL, para que la f sea de 48MHz => 96MHz/2 = 48MHz que
es la f de un USB de alta velocidad
config FOSC
queremos el PLL
config FCMEN
= OFF
sec.
config IESO
= OFF
;// Al polarizar el PIC NO inicia con el
osc.sec mientras el osc.ppal. arranca
config PWRT
= ON
;// Retraza el arranque del osc cuando el
pic es polarizado
config BOR
= OFF
alimentacin baje de cierto umbral
config BORV
=3
config VREGEN = ON
del USB, que es de 3.3V
config WDT
= OFF
;// NO se usa el perro guardian
config WDTPS = 32768
;// escala del perro guardian
config MCLRE = OFF
;// la pata del reset SI est
(cONFIGURACIN INICIAL ON)
config LPT1OSC = OFF
;// EL Timer1 NO trabaja en modo de
bajo consumo
config PBADEN = OFF
;// Los pines PB<4:0> se configuran
como digitales (si fuese ON, se configuran como analgicas) al resetear
config CCP2MX = ON
;// CCP2 aparece en RC1 (si fuese OFF,
CCP2 aparece en RB3)
config STVREN = OFF
;// NO resetear cuando se desborde la
pila
config LVP
= OFF
;// NO se quiere voltaje de programacin
bajo (Single-Supply ICSP)
config ICPRT = OFF
;// Dedicated In-Circuit
Debug/Programming
config XINST = OFF
;// Extended Instruction Set
config DEBUG
= OFF
;// NO modo debug RB6 y RB7
como lneas normales, en caso contrario, RB6 y RB7 estan dedicadas
;
// Los
siguientes son proteccin de memoria
config CP0
= OFF
;// NO protege acceso a 000800-001FFF
config CP1
= OFF
;// NO protege acceso a 002000003FFF
config CP2
= OFF
;// NO protege acceso a 004000005FFF
config CP3
= OFF
;// NO protege acceso a 006000007FFF
config CPB
= OFF
;// NO protege acceso a 0000000007FF
seccin de boot
config CPD
= OFF
;// NO protege EEPROM
config WRT0
= OFF
;// NO protege escritura de
000800-001FFF
config WRT1
= OFF
;// NO protege escritura de
002000-003FFF
config WRT2
= OFF
;// NO protege escritura de
004000-005FFF
config WRT3
= OFF
;// NO protege escritura de
006000-007FFF
config WRTB
= OFF
;// NO protege escritura de 0000000007FF seccion de boot
config WRTC
= OFF
;// NO protege escrituta de bits de
configuracin 300000-3000FF
config WRTD
= OFF
;// NO protege escritura de
EEPROM
config EBTR0 = OFF
;// NO protege de lectura desde
otros bloques a 000800-001FFF
config EBTR1 = OFF
;// NO protege de lectura desde
otros bloques a 002000-003FFF
config EBTR2 = OFF
;// NO protege de lectura desde
otros bloques a 004000-005FFF
config EBTR3 = OFF
;// NO protege de lectura desde
otros bloques a 006000-007FFF
config EBTRB = OFF
;// NO protege de lectura desde
otros bloques a 000800-0007FF seccion de boot
EQU
EQU
EQU
0CH
0DH
0EH
EQU
EQU
02H
03H
ORG 00H
GOTO INICIO
ORG 08H
GOTO INTERRUPCION
MOVWF
PORTD
MOVLW
0FFH
MOVWF
IGUAL1,0
CPFSEQ
PORTB,0
GOTO CONVERTIR
MOVLW
01H
MOVWF
IGUAL2,0
CPFSEQ
PORTD,0
GOTO CONVERTIR
BSF
PORTD,7,0
GOTO CONVERTIR
END
Resultados
Conclusiones