Sei sulla pagina 1di 13

REGISTRO STATUS

REGISTRO OPTION_REG

REGISTRO RCSTA

REGISTRO TXSTA

REGISTRO ADCON1

REGISTRO ADCON0

REGISTRO CCP2CON Y CCP1CON

REGISTRO T2CON

REGISTRO T1CON

REGISTRO PIR2

REGISTRO PIR1

REGISTRO PIE2

REGISTRO PIE1

REGISTRO INTCON

OTROS REGISTROS

REGISTRO STATUS (Direccin 03h, 83h, 103h, 183h)


BIT7

BIT6

BIT5

BIT4

BIT3

BIT2

BIT1

BIT0

IRP

RP1

RP0

#TO

#PD

DC

BIT 7 IRP: Bit de seleccin del banco de registros (Usado para direccionamiento indirecto)
1 = Bank 2, 3 (100h - 1FFh)
0 = Bank 0, 1 (00h - FFh)
BIT 6-5 RP1:RP0: Bits de seleccin del banco de registros (Usado para direccionamiento directo)
11 = Bank 3 (180h - 1FFh)
10 = Bank 2 (100h - 17Fh)
01 = Bank 1 (80h - FFh)
00 = Bank 0 (00h - 7Fh)
Cada banco es de 128 bytes
BIT 4 #TO: Bit Time-out
1 = Al encender la fuente, Con la instruccin CLRWDT o con la instruccin SLEEP

0 = Desbordamiento del WDT programado


BIT 3 PD: Bit Power-down
1 = Por apagado de la fuente o por la instruccin CLRWDT
0 = Por ejecucin de la instruccin SLEEP
BIT 2 Z: Bit de cero
1 = Se di un resultado cero en una operacin aritmetica o lgica
0 = No di un resultado cero en una operacin aritmetica o lgica
BIT 1 DC: Acarreo en el cuarto bit para instrucciones (ADDWF, ADDLW,SUBLW,SUBWF)
1 = Acarreo en el cuarto bit para sumas y no para restas
0 = No hay acarreo en el cuarto bit en sumas pero s en resta
BIT 0 C: Bit de acarreo en las instrucciones (ADDWF, ADDLW,SUBLW,SUBWF,RRF,RRL)
1 = Un acarreo ocurri en sumas pero no en resta
0 = No hay acarreo en sumas pero s en rest
REGRESAR

REGISTRO OPTION_REG (ADDRESS 81h, 181h)


BIT7

BIT6

BIT5

BIT4

BIT3

BIT2

BIT1

BIT0

#RBPU

INTEDG

T0CS

T0SE

PSA

PS2

PS1

PS0

BIT7 #RBPU: Habilita las resistencias pull up del PORTB


1 = PORTB pull-ups Son deshabilitadas
0 = PORTB pull-ups son habilitadas
BIT6 INTEDG: Bit de seleccin del flanco de interrupcin
1 = Interrupcin por flanco de subida en el pin RB0/INT
0 = Interrupcin por flanco de bajada en el pin RB0/INT
BIT5 T0CS: Selecciona la fuente de reloj para el TMRO
1 = Transicin sobre el pin RA4/T0CKI
0 = Ciclo de reloj interno (CLKOUT)
BIT 4 T0SE: Flanco de incremento del TMRO si se seleccion TOCS en 1
1 = Incremento por flanco de bajada en el pin RA4/T0CKI
0 = Incremento por flanco de subida en el pin RA4/T0CKI
BIT3 PSA: Bit de asignacin del preescaler
1 = Prescaler es asignadoWDT
0 = Prescaler es asignado al TMR0
BITS 2-0 PS2:PS0: Bits de seleccin del preescalado
Valor de los bits

Preescalado del
TMR0
1:2

000

Preescalado del
WDT
1:1

001

1:4

1:2

010

1:8

1:4

011

1:16

1:8

100

1:32

1:16

101

1:64

1:32

110

1:128

1:64

111

1:256

1:128

REGRESAR

REGISTRO INTCON (Direccin 0Bh, 8Bh, l0Bh, 18Bh)


BIT7

BIT6

BIT5

BIT4

BIT3

BIT2

BIT1

BIT0

GIE

PEIE

T0IE

INTE

RBIE

T0IF

INTF

RBIF

BIT7 GIE: Global Interrupt Enable (Habilitador global de interrupciones)


1 = Habilita las interrupciones
0 =Deshabilita las interrupciones
BIT 6 PEIE: Bit que habilita las interrupciones de los perifericos
1 = Las habilita
0 = Las deshabilita
BIT5 T0IE: Interrupcin debida al desbordamiento del timer 0 TMRO
1 = Habilita interrupcin debida al TMR0
0 = Deshabilita interrupcin debida al TMR0
BIT 4 INTE: Interrupcin debida a flancos en el pin RB0/INT
1 = La habilita
0 = La deshabilita
BIT 3 RBIE: Interrupcin debida a cambio de estado en los pines RB4-RB7
1 = Las habilita
0 = Las deshabilita
BIT 2 T0IF: Este bit indica que se dio una interrupcin por desbordamiento del TMR0
1 = Se dio la interrupcin (Este bit debe ser limpiado por software )
0 = No hay interrupcin debida al TMR0
BIT1 INTF: Bandera de interrupcin debida al RB0/INT
1 = Ocurri una interrupcin debida al RB0/INT (Debe ponerse a cero por software)
0 = No ha ocurrido una interrupcin debida al RB0/INT
BIT 0 RBIF: Bandera de interrupcin debida al cambio de estado en los pines RB4-RB7
1 = Al menos uno de los pines RB4-RB7 a cambiado de estado
0 = No han ocurrido cambios en los pines RB4-RB7
REGRESAR

REGISTRO PIE1 (Direccin 8Ch)


BIT7

BIT6 BIT5 BIT4

BIT3

BIT2

BIT1

BIT0

PSPIE ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE


BIT7 PSPIE: Se mantiene en 0 PARA EL PIC 16F873
BIT 6 ADIE:Habilitador de interrupcin por conversin anloga a digital ADC
1 = La habilita
0 = La deshabilita
BIT5 RCIE: Interrupcin por recepcin serial USART
1 = Habilita la interrupcin por recepcin USART
0 = Deshabilita la interrupcin por recepcin USART
BIT 4 TXIE: Interrupcin por transmisin serial USART
1 = Habilita la interrupcin por transmisin USART
0 = Deshabilita la interrupcin por transmisin USART

BIT3 SSPIE: Interrupcin serial SSP


1 =Habilita la interrupcin SSP
0 = La deshabilita
BIT2 CCP1IE: Interrupcion debida al modulo de captura comparacin y PWM CCP1
1 = Habilita la interrupcin por CCP1
0 = Deshabilita la interrupcin por CCP1
BIT 1 TMR2IE: Interrupcion debido a que TMR2 iguala a PR2
1 = Se habilita
0 = Se deshabilita

BIT 0 TMR1IE: Interrupcin debida al desbordamiento del timer TMR1


1 =Habilita interrupcin por desbordamiento del timer 1
0 = La deshabilita
REGRESAR

REGISTRO PIE2 (Direccin 8Dh)


BIT7 BIT6
X

BIT5
X

BIT4

BIT3

EEIE BCLIE

BIT2

BIT1

BIT0

CCP2IE

BIT7-5: No los utilizamos


BIT4 EEIE: Interrupcin por finalizacin de escritura en la EEPROM
1 =La habilitamos
0 = La deshabilitamos

BIT3 BCLIE:Interrupcin de bus


1 = La habilitamos
0 = La deshabilitamos
BIT2-1: No los usamos
BIT0 CCP2IE: Interrupcion debida al modulo de captura comparacin y PWM CCP2
1 = Habilita la interrupcin por CCP1
0 = Deshabilita la interrupcin por CCP1
REGRESAR

REGISTRO PIR1 (Direccin 0Ch)


BIT7 BIT6 BIT5 BIT4 BIT3
X

BIT2

BIT1

ADIF RCIF TXIF SSPIF CCP1IF TMR2IF

BIT0
TMR1IF

BIT7 PSPIF: Se mantiene en 0 PARA EL PIC 16F873


BIT ADIF: Bandera de interrupcin por conversin anloga a digital ADC
1 =Ocurri una interrupcin
0 = No ha ocurrido
BIT5 RCIF: Interrupcin por recepcin serial USART
1 =Bandera que indica que se di interrupcin por recepcin USART
0 = No se ha presentado
BIT 4 TXIF: Interrupcin por transmisin serial USART
1 = Ocurri una interrupcin por transmisin USART
0 = No ha ocurrido una interrupcin por transmisin USART
BIT3 SSPIF: Interrupcin serial SSP
1 =Ocurri una interrupcin SSP
0 =No ha ocurrido
BIT2 CCP1IF: Interrupcion debida al modulo de captura comparacin y PWM CCP1
1 =Se di la interrupcin por CCP1
0 = No se ha dado la interrupcin por CCP1
BIT 1 TMR2IF: Interrupcion debido a que TMR2 iguala a PR2
1 = Se han igualado TMR2 con PR2
0 = Ocurri la interrupcin

BIT 0 TMR1IF: Interrupcin debida al desbordamiento del timer TMR1


1 =Timer1 se desbord
0 = No se ha desbordado el Timer1

REGISTRO PIR2 (Direccin 0Dh)


BIT7 BIT6
X

BIT5
X

BIT4

BIT3

BIT2

BIT1

BIT0

CCP1IE

EEIF BCLIF

BIT7-5: No los utilizamos


BIT4 EEIF: Bandera de interrupcin por finalizacin de escritura en la EEPROM
1 = Se presento la interrupcin
0 = No se ha presentado la interrupcin
BIT3 BCLIF:Bandera de interrupcin por colisin de bus
1 = Se dio la interrupcin
0 = No se ha presentado interrupcin
BIT2-1: No los usamos
BIT0 CCP2IF: Interrupcion debida al modulo de captura comparacin y PWM CCP2
1 = Se dio una interrupcin por CCP1
0 = No se ha dado una interrupcin por CCP1
REGRESAR

REGISTRO T1CON: Registro de control del TIMER1 (direccin 10h)


BIT7 BIT6
X

BIT5

BIT4

BIT3

BIT2

BIT1

BIT0

T1CKPS T1CKPS T1OSCE T1SYN TMR1C TMR1O


1
0
N
C
S
N

BIT7-6 No implementados
BITS5-4 T1CKPS1:T1CKPS0: Preescalado del TMR1
11 = 1:8
10 = 1:4
01 = 1:2
00 = 1:1
BIT 3 T1OSCEN: Bit de control para habilitar el oscilador del TMR1
1 =Oscilador habilitado
0 = Oscilador deshabilitado
BIT 2 T1SYNC: Bit de control de la entrada de reloj del TMR1 externo cuando TMR1CS=1
1 = No se sincroniza la entrada de reloj externa
0 = Se sincroniza la entrada de reloj externa
Cuando TMR1CS = 0, este bit es ignorado pues el Timer1 usa reloj interno
BIT 1 TMR1CS: Selecciona la fuente de reloj para el Timer1
1 = Relij externo por el pin RC0/T1OSO/T1CKI
0 =Reloj interno(FOSC/4)

BIT 0 TMR1ON:Este bit habilita el Timer1

1 =Lo habilita
0 =Lo deshabilita
REGRESAR

REGISTRO T2CON: REGISTRO DE CONTROL DEL TIMER2 (direccin 12h)


BIT
7
X

BIT6

BIT5

BIT4

BIT3

BIT2

BIT1

BIT0

TOUTP TOUTP TOUTP TOUTP TMR2O T2CKP T2CKP


S3
S2
S1
S0
N
S1
S0

BIT7: No implementado
bit 6-3 TOUTPS3:TOUTPS0: Bits de seleccin del posescalado de la salida del Timer2
0000 = 1:1
0001 = 1:2
0010 = 1:3

1111 = 1:16

BIT2 TMR2ON: Bit que activa el Timer2


1 = Activa el Timer2
0 = Desactiva el Timer2

BITS 1-0 T2CKPS1:T2CKPS0: Bits de seleccin del preescalado del Timer2


00 =Preescalado en 1
01 =Preescalado en 4
1x = Preescalado en 16
REGRESAR

Registro CCP1CON (direccin 17h)/Registro CCP2CON (direccin 1Dh)


BIT7 BIT6 BIT5
X

BIT4

BIT3

BIT2

BIT1

BIT0

CCPxX CCPxY CCPxM3 CCPxM2 CCPxM1 CCPxM0

BITS7-6 No implementados
BITS5-4 CCPxX:CCPxY: Bits menos significativos del ciclo de dureza para PWM los otros 8 se
encuentran en CCPRxL. No son usados para captura y comparacin
BIT3-0 CCPxM3:CCPxM0: Selecciona el modo de trabajo de CCP1 y de CCP2
0000 = Capture/Compare/PWM deshabilitados

0100 = Modo de captura cada flanco de caida


0101 = Modo de captura cada flanco de subida
0110 = Modo de captura cada 4 flancos de subida
0111 = Modo de captura cada 16 flancos de subida
1000 =Modo comparacin, la salida se carga a uno (CCPxIF se carga con uno)
1001 =Modo comparacin, la salida se carga a cero (CCPxIF se carga con uno)
1010 = Modo comparacin, interrupcin generada por software (CCPxIF es cargado con uno, CCPx
no se afecta)
1011 = Modo comparacin, ,se dispara por un evento especial(CCPxIF se carga con uno, CCPx no
se activa); CCP1
resets TMR1; CCP2 resets TMR1 y empieza una conversin A/D (si el mdulo A/D es habilitado)
11xx = Modo PWM

T=(PR2-1)*(tinstruccion)*(valor preescaler TMR2)


DC=(CCPR1L:CCP1CON<4:5>)*(treloj)*( valor preescaler TMR2)
REGRESAR

Registro ADCON0 (direccin lFh)


BIT7

BIT6

BIT5

BIT4

BIT3

BIT2

ADCS1 ADCS0 CHS2 CHS1 CHS0 G0/#DONE

BIT1

BIT0

ADON

BITS7-6 ADCS1:ADCS0: Bits de seleccin del reloj para la conversin A/D


00 = FOSC/2
01 = FOSC/8
10 = FOSC/32
11 = FRC (Oscilador interno RC)

BIT5-3 CHS2:CHS0: Selecciona el canal con el que se quiere trabajar


000 = Canal 0, (RA0/AN0)
001 = Canal1, (RA1/AN1)
010 = Canal2, (RA2/AN2)
011 = Canal3, (RA3/AN3)
100 = Canal4, (RA5/AN4)
BIT2 GO/#DONE: Bit que me indica el estado de la conversin Anloga a digital. si ADON=1
1= La conversin A/D esta en progreso
0 = La conversin A/D finaliz o no esta en progreso
BIT1: No implementado
BIT0 ADON: El modulo de conversin anlogo a digital esta activado
1 = A/D esta operando
0 = A/D esta apagado y no consume corriente
REGRESAR

Registro ADCON1 (direccin 9Fh)


BIT7

BIT6

ADFM

BIT5 BIT4 BIT3


X

BIT2

BIT1

PCFG3 PCFG2 PCFG1

BIT0
PCFG0

BIT7 ADFM: Mode de justificacin del resultado de la conversin A/D


1 =Justificado a la derecha. los 6 bist mas significativos de ADRESH son leidos como0
0 = Justificacin a la izquierda. los 6 bits menos significativos de ADRESL son leidos como 0.
BITS 6-4 No implementados
BITS3-0 PCFG3:PCFG0: Selecciona los puertos que son anlogos o digitales

REGRESAR

Registro de Estado y Control TXSTA (Transmisor)


BIT7

BIT6

BIT5 BIT4

BIT3

CSRC

TX9

TXEN SYNC

BIT2

BIT1

BRGH TRMT

BIT7 CSRC: Selecciona la fuente de reloj


Modo asncrono:
No importa
Modo sncrono
1 = Modo maestro(generado internamente por BRG)

BIT0
TX9D

0 = Modo esclavo(reloj de fuente externa)


BIT6 TX9: Transmisin del noveno bit
1 = Habilita la transmisin del noveno bit
0 = No habilita la transmisin del noveno bit
BIT5 TXEN: Habilitador de la transmisin
1 = Habilitada
0 = deshabilitada
Nota: SREN/CREN elimina TXEN en modo sncrono.
BIT 4 SYNC: Bit de seleccin USART
1 = Modo sncrono
0 = Modo asncrono
BIT3: No implementado
BIT 2 BRGH: Bit de seleccin de la rata de transmisin serial, en modo sncrono no es
implementado:
Mode asncrono:
1 =Alta velocidad
0 = Baja velocidad
BIT1 TRMT: Estado del registro de desplazamiento en la transmisin
1 =TSR vacio
0 = TSR lleno
BIT 0 TX9D:Noveno bit de la transmisin puede ser de paridad
REGRESAR

Registro de estado y Control RCSTA (Receptor)


BIT7

BIT6

BIT5 BIT4

BIT3

SPEN

RX9

SREN CREN

BIT2

BIT1

FERR OERR

BIT0
RX9D

BIT7 SPEN: Habilitacin del puerto serie


1 = Habilita el puerto serial (Configure los pines RC7/RX/DT y RC6/TX/CK como puerto serial)
0 =Lo deshabilita
BIT6 RX9:Numero de bits en la recepcin
1 = 9 bits en la recepcin
0 = 8 bits en la recepcin
BIT5 SREN: Bit habilitador de recepcin nica
En modo asncrono no importa
En modo sincrono-maestro
1 = La habilita
0 = La deshabilita
Es cargado con cero luego de que se completa la recepcin.
En modo sncrono esclavo, no importa su valor
BIT4 CREN: Bit habilitador de recepcin continua

Para el modo asncrono:


1 =Habilitada la recepcin continua
0 = Deshabilitada la recepcin continua
Modo sncrono:
1 = Habilita recepcin continua hasta que el bit CREN sea borrado (CREN anula SREN)
0 = Deshabilitada la recepcin continua
BIT 3 ADDEN: Bit habilitador de deteccinde direccin
Modo asncrono 9-bit (RX9 = 1):
1 =Habilita la deteccin de direccin, habilita la interrupcin y carga el bufer receptor cuando
RSR<8> es uno
0 = Disables address detection, Todos los bytes son recibidos y el noveno bit es usado como bit de
paridad
BIT2 FERR: Bit de error de empaquetamiento
1 = Error de empaquetamiento (Puede actualizarse al leer el registro RCREG y recibir el siguiente
byte)
0 = No hay error
BIT 1 OERR: Bit de error de desbordamiento
1 = Error de desbordamiento (puede ser borrado al borrar CREN)
0 =No hay error
BIT 0 RX9D: Noveno bit de datos de recepcin. Se puede emplear como bit de paridad
REGRESAR

OTROS REGISTROS
Los registros TRISA, TRISB, TRISC son los que asignan a los puertos PORTA, PORTB,
PORTC como entradas o salidas. Si estan en cero actuan como salida y en uno actuan como
entrada, el TRISA solo posee 6 bits a manipular ya que el puerto A solo tiene 6 pines de entrada o
salida
El registro SPBRG almacena un valor con el cual calculo la velocidad de transmisin serial. si el bit
BRGH del registro TXSTAes igual a 0 entonces la rata de baudios es = FOSC/(64(SPBRG+1)) y si
BRGH es 1, la rata de baudios es = FOSC/(16(SPBRG+1))
El registro TXREG almacena el dato a enviar a travs del puerto serial
El registro RCREG se carga con el dato recibido por el puerto serial
El registro ADERESL Y ADRESH Almacenan el valor en binario de la entrada analoga con la que
se trabaje en deterninado instante.
EEDATA almacena el dato que se leyo o que se va a escribir en la direccin EEADR de la
EEPROM

Potrebbero piacerti anche