Está en la página 1de 6

PIC18F45K50

No hay RC3, RC4, RC5

El master reset es el MCLR, activo en bajo

RA, RB, RD completos 8bits cada uno

En RE solo hay 4 bits

Por defecto son entradas analógicas

CONFIGURACIONES DE BITS
Fuente de reloj

Fosc INTOSCCLKO Salida de reloj en Oscilador interno 16MHz

PCLKEN OFF Oscilador primario

Oscilador secundario para colocar un oscilador de 32.768KHz para realizar un realoj en


tiempo real con el timer1

OSCCON 52H a 4MHz

Habilitación de la entrada de reset (MCLR)

Npwrten ON tiempo para que entre en funcionamiento

BROW-OUT RESET

Boren OFF reinicia si los voltajes son bajos

POWER-UP TIMER

PBADEN OFF Habilita los port A/D

WATCHDOG TIMER

WDTEN OFF reseteo automático

LVP OFF
PARA MANIPULAR LOS PUERTOS
TRISx para configurar el sentido del puerto “0” para salida y “1” para entrada

PORTx Para leer el puerto

LATx Para escribir el puerto

ANSELx Para configurar el puerto en analógico o digital, “1” para analógico y


“0” para digital

DIAGRAMA ARQUITECTURA HARVARD


BUS DATOS
BUS DIRECCIONES

MEMORIA UP MEMORIA E/S y


PROGRAMA REGISTRO DATOS PERIFERICOS

BUS DATOS
BUS DIRECCIONES

La diferencia de usar un cristal interno y externo es por el consumo de energía, el externo


consume más energía
ACTIVA EN ALTO:

ACTIVA EN BAJO:

OJO:

PBADEN = OFF RB0 A RB4 para que sean digitales

PBADEN = ON RB0 A RB4 como entradas analógicas para conversor A/D

FOSC = INTOSCIO RA6 PARA PODER USARLO

MCLRE = OFF DESACTIVAR MCLR PARA USAR RE3

INSTRUCCIONES
Movlw mover un literal a Wreg

Movwf mover Wreg a registro f

Movf [registro], d mover el registro y lo mueve a “d”

Movf [registro], w mover el registro y lo mueve a “w”

Movff [registro], [registro] mueve el contenido de registro 1 hacia registro 2

Movff PORTB, W

Movwf LATD

Movfw TRISx mover el registro y lo coloca en Wreg

Movfw TRISA ===== movf TRISA, W

bsf [registro], #bit coloca a “1” al #bit

bcf [registro], #bit coloca a “0” al #bit

btg [registro], #bit coloca el complemento al #bit

goto o bra salto

call llama una función con retorno


btfss [registro], #bit pregunta si el #bit es “1”

btfsc [registro], #bit pregunta si el #bit es “0”

decf [registro], d (o w) decrementa en 1 cuando llega a 0 se activa la bandera

incf [registro], d (o w) incrementa en 1

setf [registro] coloca todos los bits en “1”

clrf [registro] coloca todos los bits en “0”

comf complementa y almacena en Wreg

COMPARATIVOS

CPFSEQ igualdad f =

CPFSLT menor que f<Wreg

CPFSGT

CONTADOR DE PROGRAMA (PC)

Va de dos en dos

DIAGRAMA DE FLUJO PARA PUNTEROS

INICIO

CONFIG

PREGUNTA

Posición de tabla

TBLRD* (incrementa)

Mueve a la salida

SUBWF sustraer WREG de f


En timer0:

Para 8bits TMR0L

Para 16bits TMR0L:TMR0H

FRECUENCIA DE RELOJ 1:2 A 1:256

El desborde ocurre cuando llega a la cuenta máxima y se activa la bandera TMR0IF=1 (se baja
manualmente con INTCON, 2 porque el bit 2 es de TMR0IF)
8
para el caso 1 :CON PRESCALER 1: 1 sera 2 × 1… .. cuenta inicial 6 para llegar a los25 0
para el caso 2 :CON PRESCALER 1: 2 sera 28 × 2 … … cuentainicial 6 para llegar alos 50 0
8
para el caso 3 :CON PRESCALER 1: 4 sera 2 ×4 … .. cuentainicial 6 9 parallegar a los 750
1024−750=274

También podría gustarte