Sie sind auf Seite 1von 28

UNIVERSIDAD TCNICA DE AMBATO

FUSIBLES E INTERRUPCIONES
I. OBJETIVOS:
Objetivo General:
Conocer sobre cada fusible e interruptor que tiene el PIC 16f887 y el
18f4550 para determinacin de cual se utiliza para un mejor
funcionamiento de los mismos.
Objetivos Especficos:
Conocer la descripcin de los fusibles y las interrupciones para los PICs
16f887 y 18f4550.
Determinar fusibles e interrupciones diferentes entre los PICS 16f887 y
18f4550.
II. INTRODUCCIN:
FUSIBLES:
1) Segn Fernando E. Valds Prez y Ramn Palls Areny en su libro
MICROCONTROLADORES: FUNDAMENTOS Y APLICACIONES CON PIC: Los
Fusibles Son configuraciones de la forma de funcionamiento del
microcontrolador, se transfieren al PIC cada vez que se graba un programa.
2) Segn Armando Astarloa Cullar y Aizol Zuloaga Izaguierreen su libro
SISTEMAS DE PROCESAMIENTO DIGITAL: Los bit's de configuracin o ms
comnmente llamados "fusibles" permiten configurar ciertas funciones en
los microcontroladores PIC, como el tipo de cristal para el oscilador,
permiten proteger el cdigo en el micro, entre muchas funciones. La
cantidad de funciones que se pueden configurar con los fusibles dependen
del microcontrolador, si tenemos en el 16F84A 4 funciones, en el 16F88 son
alrededor de 13 funciones.
3) Segn Cnovas Andrs en su documento Manual CCS Espaol alojado en
Scribd.com: Los fusibles se utilizan para configurar parmetros importantes
del sistema. A diferencia de los registros de configuracin, estos fusibles
estn relacionados con aspectos ms bsicos e importantes en el
funcionamiento del sistema (por ejemplo, los bits de fusible de la fuente de
reloj, que le permiten especificar el origen y/o la velocidad de reloj del
chip). Adems, su configuracin queda grabada en memoria Flash, de forma
tal que no se pierda al cortar la alimentacin al microcontrolador.
Ejemplos:
# FUSES LP
# FUSES XT
# FUSES HS
# FUSES RC
# FUSES WDT

Low Power
Cristal Oscilator 4Mhz.
High Speed Oscilator >4Mhz.
Montaje Resistencia Condensador.
Watch Dog Timer Activo

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

# FUSES NOWDT
# FUSES PROTECT
# FUSES NOPROTECT
# FUSES PUT

No Watch Dog Timer.


Proteccion de Lectura.
No Proteccion de Lectura.
Power Up Timer.
Tabla2.1: Ejemplos de fusibles.

INTERRUPCIONES:
4) Segn Fernando E. Valds Prez y Ramn Palls Areny en su libro
MICROCONTROLADORES: FUNDAMENTOS Y APLICACIONES CON PIC:
Una solicitud de interrupcin o simplemente una interrupcin es un evento
de origen interno o externo que, si es atendido, hace que el
microcontrolador interrumpa la ejecucin del programa en curso y en su
lugar ejecute las interrupciones de otro programa. Normalmente, cuando el
programa que atiende la solicitud de interrupciones ha completado su
ejecucin, el microcontrolador continua con las instrucciones del programa
interrumpido, justo con la instruccin que sigue a la que se estaba
ejecutando cuando se produjo la solicitud de interrupcin.

Figura 2.4.1: Cuando se produce una solicitud de interrupcin y sta es atendida


por el microcontrolador, se termina la ejecucin de la instruccin en curso y se
salta al programa de atencin a dicha solicitud de interrupcin. Concluido ste,
contina la ejecucin de las instrucciones del programa interrumpido.4
5) Segn Cnovas Andrs en su documento Manual CCS Espaol alojado en
Scribd.com: Las interrupciones son un mecanismo por el que un dispositivo,
ante la ocurrencia de un evento, pide al procesador que interrumpa el
programa que se est ejecutando y pase a ejecutar temporalmente una
subrutina especifica. Esta subrutina recibe el nombre de rutina de atencin
a interrupcin. Cuando el microcontrolador recibe una seal de
interrupcin, el contador de programa apunta a la direccin 04H de la
memoria de programa, por eso, all se debe escribir toda la programacin
necesaria para atender dicha interrupcin.
6) Segn Armando Astarloa Cullar y Aizol Zuloaga Izaguierreen su libro
SISTEMAS DE PROCESAMIENTO DIGITAL: Las interrupciones permiten a
cualquier suceso interior o exterior interrumpir la ejecucin del programa
principal en cualquier momento. En el momento de producirse, el PIC

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

ejecuta un salto a la rutina de atencin a la interrupcin previamente


definida por el programador, donde se atender a la demanda de la
interrupcin.
Ejemplos:
Interrupciones
#INT_AD
#INT_ADOF
#INT_BUSCOL
#INT_BUTTON
#INT_CAERR
#INT_CANIRX
#INT_CANRX0
#INT_CANRX1
Interrupciones
#INT_AD
#INT_ADOF
#INT_BUSCOL
#INT_BUTTON
#INT_CAERR
#INT_CANIRX
#INT_CANRX0
#INT_CANRX1

Descripcin
Conversin AD completa.
Conversin AD fuera de rango de tiempo
Colisin de bus
Por botn (14000)
Erro en el mdulo CAN
Mensaje invalido n el bus CAN
Bus CAN recibe un nuevo mensaje en buffer 0
Bus CAN recibe un nuevo mensaje en buffer 1
Descripcin
Conversin AD completa.
Conversin AD fuera de rango de tiempo
Colisin de bus
Por botn (14000)
Erro en el mdulo CAN
Mensaje invalido n el bus CAN
Bus CAN recibe un nuevo mensaje en buffer 0
Bus CAN recibe un nuevo mensaje en buffer 1
Tabla 2.6.1: Ejemplos de interrupciones.

FUSIBLES DEL PIC 16F887 DIFERENTES AL PIC 18F4550


Los FUSIBLES o BITS DE CONFIGURACION se pueden programar, o dejar sin
programar para activar o desactivar ciertas caractersticas especiales del
microcontrolador. Estos bits son asignados en el PIC 16F887 en las posiciones 2007h y
2008h de la memoria de programa respectivamente.
NOMBRE
DE FUSIBLE
CP

PWRTE

DESCRIPCIN

FUNCIN

PIC

Code
Protection
Este fusible si est habilitado en 16f887
Codigo de Proteccion de ON evita que otras personas
Programa
puedan leer el programa
contenido en el PIC
Config
1 = Program memory code
protection is disabled
0 = Program memory code
protection is enabled
Power-up Timer Enable Este fusible se utiliza para 16f887
Bit de Permiso para el resetear el PIC cada vez que se
Timer de Alimentacin
conecta a la fuente de
alimentacin de la aplicacin a
usarse.

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

WDTE

FOSC<2:0>

Config
1 = PWRT disabled
0 = PWRT enabled
Watchdog Timer Enable Este
fusible
temporizador 16f887
Temporizador de resetea el PIC cada cierto
Perro Guardin
tiempo
para
evitar
enciclamientos por error en el
programa.
Config
1 = WDT enabled
0 = WDT disabled (pudiendo ser
habilitado por SWDTEN bit del
resgistro WDTCON)
Bits de Seleccin del Este fusible define la funcin 16f887
Oscilador.
de los terminales A6 y A7. Ya

sea como puertos I/O, como


pines para cristal externo o
para recibir o emitir seales
de reloj.
Se comporta de acuerdo a:
111: Oscillator RC
110: RC I/O oscillator
101: INTOSC oscillator
100: INTOSCIO oscllator
011: EC: I/O
010: HS oscillator
001: XT oscillator
000: LP oscillator
WRT <1:0>

Flash
Program
Memory Self Write
Enable bits o bits de
habilitacin de auto
escritura
de
la
memoria flash de
programa.

Protege la memoria de
programa contra escritura de la
siguiente manera:
00: 0000h to 0FFFh
01: 0000h to 07FFh
10: 0000h to 00FFh
11: writte protection off

16F887

BOR4V

Brown-out
Selection bit

Reset Permite configurar el nivel

16f887

de voltaje del reset o de


escritura de la siguiente
manera:
0: setea en 2.1 v
1: setea en 4 v
Figura 2.1: Fusibles Del Pic 16f887 Diferentes Al Pic 18f4550

FUSIBLES DEL PIC 18F4550 DIFERENTES AL PIC 16F887


Los fusibles o tambin conocidos como bits de configuracin (BIT'S DE
CONFIGURACIN) permite configurar ciertas funciones de los microcontroladores

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

como el tipo de oscilador, habilitar reset, bajo voltaje en el oscilador, y otros; Los
cuales se detalla los fusibles del PIC 18F4550 diferentes al PIC 16F887.
NOMBRE DE FUSIBLE
DESCRIPCIN
CCP2 MUX bit
El
bit
de
configuracin CCP2
MUX determina qu
pin
CCP2
es
multiplexado.
Por
defecto, se le asigna
a RC1 (CCP2MX = 1)
y si el bit de
configuracin
se
borra,
CCP2
se
multiplexa con RB3.
PLL
Prescaler Este fusible funciona
Selection
como
un
multiplexor.
La
finalidad es obtener
una frecuencia de
4MHz
para
el
circuito.

System
Clock Este fusible es el
Postscaler Selection
encargado de hacer
la
divisin
de
frecuencia tanto de
la seal de entrada
96MHz o del cristal u
oscilador de entrada.

PORTB A/D

FUNCIN
Pertenece al mdulo
Capture/Compare/P
WM

PIC
18f4550

La funcin de este
Fuse es dividir la
frecuencia
de
entrada
del
Oscilador (OS1 y
OS2) a las siguientes
escalas: /No divide
(1), /2, /3, /4, /5, /6,
/10, /12.
En los dos casos se
puede
realizar
diferentes divisiones
de oscilador para de
esta manera no solo
obtener
una
frecuencia de 4MHz
sino
con
otros
valores.
Esta funcin habilita
o no la conversin
Analgica-Digital.

18f4550

Si uno requiere
hacerlo
manualmente debe
de configurar los
registros ADCON o
ANSEL
correspondientes en
el MCU.
USBDIV: USB Clock Permite realizar una Este fuse configura
Selection bit
configuracin para el de donde proviene
oscilador.
la velocidad de reloj
para el Mdulo USB.
VREGEN:
USB Modifica el voltaje Este habilita
o

SPTIMO ELECTRNICA A

18f4550

18f4550

18f4550

18f4550

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

Internal
Voltage del USB
Regulator Enable bit

deshabilita
la
utilizacin
del
regulador
interno
del Vbus para el
USB.
WDTPS3:
Configuracin
del Seleccin de bits
WDTPS0:Watchdog
wach dog.
para la configuracin
Timer
Postscale
del Watchdog Timer
Select bits
y para ello debe de
habilitar el uso de
este.
Low-Power Timer 1 Establece en nivel de Cuando se establece 18f4550
Oscillator
voltaje
en
la el
bit
de
configuracin
del configuracin
Timer 1, ya que este LPT1OSC,
el
puede funcionar en oscilador
Timer1
dos
diferentes opera en un modo
niveles de consumo de bajo consumo y
de energa
cuando LPT1OSC no
est
establecido,
Timer1 opera a un
nivel de potencia
ms alto
STVREN:
Stack Permite el reinicio Si est activo por 18f4550
Full/Underflow Reset del dispositivo.
causa
de
un
Enable bit
subdesbordamiento
restablece
el
dispositivo de lo
contrario
las
condiciones
de
subdesbordamiento
no restablecen el
dispositivo.
ICPRT: Dedicated In- Configuracin
del Con este fusible se 18f4550
Circuit
puerto
de activa o desactiva el
Debug/Programming .programacin
puerto de Puede
Port (ICPORT) Enable
configurar el puerto
bit
terminal
del
programa
para
enviar y recibir datos
seriales.
Tabla 2.2: Fusibles Del Pic 18f4550 Diferentes Al Pic 16f887
FUSIBLES IGUALES ENTRE 16F887 Y 18F4550
Los fusibles o tambin conocidos como bits de configuracin (BIT'S DE
CONFIGURACION) permiten configurar ciertas funciones de los microcontroladores

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

como el tipo de oscilador, la proteccin de cdigo, habilitar el perro guardin, habilitar


el reset maestro, habilitar un reset inicial, habilitar reset por bajo voltage en la fuente,
y otros.
FUSIBLES

DESCRIPCION

FUNCION

MASTER CLEAR

RESETEA EL
MICROCONTROLAD
OR
VISUALIZA LOS
FALLOS OCURRIDOS
EN EL PIC
PROTEJE EL CODICO
DEL
MICROCONTROLAD
OR
DEPURACIN PARA
ICD (SERIE).

MCLRE

FCMEN

FAIL-SAFE CLOCK
MONITOR ENABLE BIT

CPD

DATA EEPROM CODE


PROTECTION BIT

DEBUG

BACKGROUND
DEBUGGER ENABLE BIT

IESO

FOSC
-

INTERNAL/EXTERNAL
OSCILLATOR
SWITCHOVER BIT
OSCILLATOR SELECTION
BITS
HS
LP
XT
EC

WDT

HIGH-SPEED
CRYSTAL/RESONA
TOR
OSCILLATOR:
LOW-POWER
CRYSTAL ON
CRYSTAL/RESONA
TOR
EXTERNAL CLOCK
WITH FOSC/4
OUTPUT

WATCHDOG TIMER

SPTIMO ELECTRNICA A

CONMUTACIN
INTERNO EXTERNO

ESTABLECE LA
OSCILACION DEL
CIRCUITO

ROMPE LOS BUCLES


INFINITOS

INSTRUCCIONES
PARA
ACTIVAR/DESACTIV
AR
#FUSES MCLR
#FUSES FCMEN

#FUSES NOCPD
#FUSES CPD

#FUSES NODEBUG
#FUSES DEBUG

#FUSES IESO
#FUSES NOIESO

#FUSES HS_OSC
#FUSES XT_OSC
#FUSES LP_OSC
#FUSES EC_OSC

#FUSES NOWDT
#FUSES WDT

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

LVP

ESTABLECE LA
LOW-VOLTAGE ICSP
PROGRAMACION EN #FUSES NOLVP
PROGRAMMING
BAJA TENSIN DE
#FUSES LVP
PROGRAMACIN EN
B3 (PIC16) O B5
(PIC18)
Figura 2.3: Fusibles Iguales Entre 16f887 Y 18f4550

INTERRUPCIONES DEL PIC 16F887 DIFERENTES AL PIC 18F4550:


Registro INTCON
El registro INTCON contiene varios bits de habilitacin y de bandera para el
desbordamiento en el registro TMR0, e interrupciones por el cambio del estado en el
puerto PORTB y las interrupciones externas en el pin INT.
R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(X) CARACTERISTICAS
INTCON

GIE

PEIE

T0IE

INTE

RBIE

T0IF

INTF

RBIF

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

NOMBRE DE BIT

R/W bit de lectura/escritura


(0) Despues del reinicio, el bit se pone a cero
(x) Despus del reinicio, el estado de bit es desconocido

GIE - Global Interrupt Enable bit


Bit de habilitacin de interrupciones globales
Controla simultneamente todas las fuentes de interrupciones posibles.
1= Habilita las interrupciones no enmascaradas.
0= Deshabilita las interrupciones no enmascaradas.
PEIE - Perip=heral Interrupt Enable bit
Bit de habilitacin de interrupciones perifricas
Es similar al bit GIE, sin embargo controla interrupciones habilitadas por los
perifricos. Eso significa que no influye en interrupciones causadas por el
temporizador Timer0 o por el cambio del estado en el puerto PORTB o por el
cambio en el pin RB0/INT.
1= Habilita las interrupciones perifricas no enmascaradas.
0= Deshabilita las interrupciones perifricas no enmascaradas.
T0IE - TMR0 Overflow Interrupt Enable bit
Bit de habilitacin de interrupciones por el desbordamiento del temporizador
Timer0 controla interrupciones causadas por el desbordamiento del Timer0.

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

1= Habilita interrupciones por Timer0.


0= Deshabilita interrupciones por Timer0.
INTE - RB0/INT External Interrupt Enable bit
Bit de habilitacin de la interrupcin externa en RB0
Controla interrupciones causadas por el cambio del estado lgico en el pin de
entrada RB0/INT (interrupcin externa).
1= Habilita interrupciones externas INT.
0= Deshabilita interrupciones externas INT.
RBIE - RB Port Change Interrupt Enable bit
Bit de habilitacin de interrupciones por cambios en el puerto PORTB.
Cuando se configuran como entradas, los pines en el puerto PORTB pueden
causar una interrupcin al cambiar el estado lgico (no importa si se produce
bajada o subida de tensin, lo que importa es que se produce un cambio). Este
bit determina si una interrupcin va a ocurrir.
1= Habilita interrupciones por cambio en el puerto PORTB.
0= Deshabilita interrupciones por cambio en el puerto PORTB.
T0IF - TMR0 Overflow Interrupt Flag bit
Bit de bandera de interrupcin por el desbordamiento del Timer0
Detecta el desbordamiento en el registro del temporizador Timer0, o sea el
contador se pone a cero.
1= En el registro del Timer0 ha ocurrido desbordamiento (esta bandera debe
volverse a 0 por software).
0= En el registro del Timer0 no ha ocurrido desbordamiento.
INTF - RB0/INT External Interrupt Flag bit
Bit de bandera de interrupcin externa en INT
Detecta el cambio en el estado lgico en el pin INT.
1= Ha ocurrido una interrupcin externa por INT (esta bandera debe volverse
a 0 por software)
0= No ha ocurrido una interrupcin externa por INT.
RBIF - RB Port Change Interrupt Flag bit
Bit de bandera de interrupcin por cambio en el puerto RB
Detecta cualquier cambio del estado lgico de alguno de los pines de entrada
en el puerto PORTB.
1= Al menos uno de los pines de E/S de propsito general en el puerto
PORTB ha cambiado de valor. Despus de leer el puerto PORTB, el bit RBIF
debe volverse a 0 por software.
0= Ninguno de los pines de E/S de propsito general en el puerto PORTB ha
cambiado de valor.

Registro PIE1
El registro PIE1 contiene los bits de habilitacin de interrupciones perifricas.

PIE1

R/W(0)

R/W(0)

R/W(0)

R/W(0)

R/W(0)

R/W(0)

R/W(0)

Caractersticas

ADIE

RCIE

TXIE

SSPIE

CCP1IE

TMR2IE

TMR1IE

Nombre de bit

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

-Bit no implementado
R/W Bit de lectura/escritura
(0)Despues del reinicio, el bit se pone a cero

ADIE - A/D Converter Interrupt Enable bit


Bit de habilitacin de interrupciones del convertidor A/D.
1 - Habilita la interrupcin ADC.
0 - Deshabilita la interrupcin ADC.
RCIE - EUSART Receive Interrupt Enable bit
Bit de habilitacin de interrupciones de recepcin del EUSART.
1 - Habilita la interrupcin de recepcin del EUSART.
0 - Deshabilita la interrupcin de recepcin del EUSART.
TXIE - EUSART Transmit Interrupt Enable bit
Bit de habilitacin de interrupciones de transmisin del EUSART.
1 - Habilita la interrupcin de transmisin del EUSART.
0 - Deshabilita la interrupcin de transmisin del EUSART.
SSPIE - Master Synchronous Serial Port (MSSP) Interrupt Enable bit
Bit de habilitacin de la interrupcin del puerto serie sncrono maestro (MSSP)
Habilita generar una peticin de interrupcin despus de cada transmisin de
datos por el mdulo de comunicacin serie sncrona (modo SPI o I2C).
1 - Habilita la interrupcin del MSSP.
0 - Deshabilita la interrupcin del MSSP.
CCP1IE - CCP1 Interrupt Enable bit
Bit de habilitacin de la interrupcin del mdulo 1 de
Comparacin/Captura/PWM - CCP1
Permite generar una peticin de interrupcin en el mdulo CCP1 utilizado para
procesamiento de la seal PWM.
1 - Habilita la interrupcin CCP1.
0 - Deshabilita la interrupcin CCP1.
TMR2IE - TMR2 to PR2 Match Interrupt Enable bit
Bit de habilitacin de la interrupcin de igualdad entre TMR2 y PR2.
1 - Habilita la interrupcin de igualdad entre TMR2 y PR2.
0 - Deshabilita la interrupcin de igualdad entre TMR2 y PR2.
TMR1IE - TMR1 Overflow Interrupt Enable bit
Bit de habilitacin de la interrupcin de desbordamiento del temporizador
Timer1
Habilita generar una peticin de interrupcin despus de cada desbordamiento
en el registro del temporizador Timer1, o sea el contador se pone a cero.
1 - Habilita la interrupcin de desbordamiento del temporizador Timer1.
0 - Deshabilita la interrupcin de desbordamiento del temporizador Timer1.
Registro PIE2:
El registro PIE2 tambin contiene varios bits de habilitacin de interrupciones.

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

R/W(0) R/W(0) R/W(0) R/W(0) R/W(0) R/W(0)


Caractersticas
PIE2 OSFIE
C2IE
C1IE
EEIE
BCLIE
ULPWUIE
CCP2IE Nombre de Bit
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1 Bit0
Leyenda:
Bit no implementado
R/W Bit de escritura /lectura
(0)
Despus del reinicio el bit se pone a cero

OSFIE - Oscillator Fail Interrupt Enable bit (bit de habilitacin de la


interrupcin de fallo en el oscilador)
o 1 - Habilita la interrupcin de fallo en el oscilador.
o 0 - Deshabilita la interrupcin de fallo en el oscilador.

C2IE - Comparator C2 Interrupt Enable bit (bit de habilitacin de la


interrupcin del comparador C2)
o 1 - Habilita la interrupcin del comparador C2.
o 0 - Deshabilita la interrupcin del comparador C2.

C1IE - Comparator C1 Interrupt Enable bit (bit de habilitacin de la


interupcin del comparador C1)
o 1 - Habilita la interrupcin del comparador C1
o 0 - Deshabilita la interrupcin del comparador C1.

EEIE - EEPROM Write Operation Interrupt Enable bit (bit de habilitacin de la


interrupcin de escritura en la memoria EEPROM)
o 1 - Habilita la interrupcin de escritura en la memoria EEPROM.
o 0 - Deshabilita la interrupcin de escritura en la memoria EEPROM.

BCLIE - Bus Collision Interrupt Enable bit (bit de habilitacin de la interrupcin


de colisin de bus)
o 1 - Habilita la interrupcin de colisin de bus.
o 0 - Deshabilita la interrupcin de colisin de bus.

ULPWUIE - Ultra Low-Power Wake-up Interrupt Enable bit (bit de habilitacin


de la interrupcin para salir del modo de ultra bajo consumo - la reactivacin)
o 1 - Habilita la interrupcin para salir del modo de ultra bajo consumo.
o 0 - Deshabilita la interrupcin para salir del modo de ultra bajo
consumo.

CCP2IE - CCP2 Interrupt Enable bit (bit de habilitacin de la interrupcin del


mdulo 2 de Comparacin/Captura/PWM (CCP2)
o 1 - Habilita la interrupcin del CCP2.
o 0 - Deshabilita la interrupcin del CCP2.

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

Pasando a mikroc nos queda:


void interrupt() {
// Inicio de la rutina de interrupcin
PORTB.F1 = ~PORTB.F1 ; // La interrupcin invertir el estado lgico del
// pin PORTB.1
PIR2.C2IF = 0;
// Bit de bandera de interrupcin C2IF se pone a cero
}
// Final de la rutina de interrupcin

void main() {
TRISB = 0;

// Todos los pines del puerto PORTB se configuran


// como salidas
PORTB.F1 = 1;
// El pin PORTB.1 se pone a uno
ANSEL = 0b00000101;;
// Los pines RA0/C12IN0- y RA2/C2IN+ son las
// entradas analgicas
ANSELH = 0;
// Todos los pines de E/S se configuran como digitales
CM2CON0.C2CH0 = CM2CON0.C2CH1 = 0; // El pin RA0 se selecciona para ser una
// entrada invertida del C2
PIE2.C2IE = 1;
// Habilita la interrupcin del comparador C2INT
CON.GIE = 1;
// Interrupcin global est habilitada
CM2CON0.C2ON = 1;
// Comparador C2 est habilitado
...
...

Registro PIR1:
El registro PIR1 contiene los bits de banderas de interrupcin.

PIR1

Bit7

R/W(0) R(0)
ADIF
RCIF
Bit6
Bit5

R(0)
TXIF
Bit4

R/W(0) R/W(0)
SSPIF
CCP1IF
Bit3
Bit2

R/W(0) R/W(0) Caractersticas


TMR2IF TMR1IF Nombre de Bit
Bit1
Bit0

Leyenda:
Bit no implementado
R/W
Bit de lectura/escritura
R
Bit de lectura
(0)
Despus del reinicio, el Bit se pone a cero

ADIF - A/D Converter Interrupt Flag bit (bit de bandera de la interrupcin del
convertidor A/D)
o 1 - Se ha completado una conversin A/D (el bit debe volverse a 0 por
software)
o 0 - No se ha completado una conversin A/D o no ha empezado

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

RCIF - EUSART Receive Interrupt Flag bit (bit de bandera de la interrupcin de


recepcin del EUSART)
o 1 - El bfer de recepcin del EUSART est lleno. El bit se pone a cero al
leer el registro RCREG.
o 0 - El bfer de recepcin del EUSART no est lleno.

TXIF - EUSART Transmit Interrupt Flag bit (bit de la interrupcin de


transmisin del EUSART)
o 1 - El bfer de transmisin del EUSART est vaco. El bit se pone a cero al
escribir un dato en el registro TXREG.
o 0 - El bfer de transmisin del EUSART est lleno.

SSPIF - Master Synchronous Serial Port (MSSP) Interrupt Flag bit (bit de
bandera de la interrupcin de puerto serie sncrono maestro)
o 1 - Se ha cumplido la condicin de ocurrir una interrupcin del MSSP al
transmitir/ recibir los datos. Difieren dependiendo del modo de
operacin del MSSP (SPI o I2C). El bit debe ponerse a cero por software
antes de volver de la rutina de servicio de interrupciones)
o 0 - No se ha cumplido ninguna condicin de ocurrir una interrupcin del
MSSP.

CCP1IF - CCP1 Interrupt Flag bit (bit de bandera de la interrupcin del mdulo
1 de Comparacin/Captura/PWM (CCP1).
o 1 - Se ha cumplido la condicin de la interrupcin del CCP1 (CCP1 es una
unidad para captar, comparar y generar una seal PWM). Dependiendo
del modo de operacin (modo captura o modo comparacin), se
produce una captura o la igualdad en la comparacin. En ambos casos,
el bit debe volverse a cero por software. El bit no se utiliza en el modo
PWM.
o 0 - No se ha cumplido la condicin de la interrupcin del CCP1.

TMR2IF - Timer2 to PR2 Interrupt Flag bit (bit de bandera de la interrupcin


de igual dad entre el temporizador Timer2 y el registro PR2)
o 1 - Se ha producido igualdad con el valor del TMR2 (registro de 8 bits del
temporizador) y el valor del PR2. El bit debe ponerse a cero por
software antes de volver de la rutina de servicio de interrupciones).
o 0 - No se ha producido igualdad con el valor del TMR2 y el valor del PR2.

TMR1IF - Timer1 Overflow Interrupt Flag bit (bit de bandera de la interrupcin


de desbordamiento del temporizador Timer1)
o 1 - Se ha producido desbordamiento del Timer1. El bit debe ponerse a
cero por software.
o 0 - No se ha producido desbordamiento del Timer1.

PIR2 (PERIPHERAL INTERRUPT REQUEST REGISTER 2):

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

El registro PIR2 contiene los bits de bandera de interrupcin.


Nota:
Los bits de la bandera de interrupcin se establecen cuando se produce una condicin
de alarma, sin importar el estado de su correspondiente bit de habilitacin o el Global
Enable bit, GIE del registro INTCON. Software El usuario debe asegurarse de los bits de
la bandera de interrupcin adecuadas son claras antes de activar una interrupcin.
Las siguientes banderas de interrupcin estn contenidas en el PIR2 registrarse:
Fail-Safe reloj monitor de interrupcin
2 interrupciones comparadores
EEPROM de datos de escritura de interrupcin
Ultra Low-Power despertador de interrupcin
Interrupcin CCP2
Cuando una interrupcin es atendida:
El GIE se borra para inhabilitar cualquier interrupcin adicional.
La direccin de retorno se inserta en la pila.
El PC se carga con 0004h.
R/W-0
OSFIF
Bit 7

R/W-0
C2IF
Bit 6

Leyenda
R=Readable bit
-n= Value at POR

R/W-0
C1IF
Bit 5

R/W-0
EEIF
Bit 4

R/W-0
BCLIF
Bit 3

R/W-0
U-0
R/W-0
ULPWUIF Unimplemented CCP2IF
Bit 2
Bit 1
Bit 0

W= Writable Bit U= Uniplemented bit, read as


0
1= Bit is set
0=Bit is cleared
x=
Bit
unknown

Numero de Bit

Interrupcion

Bit 7

OSFIF: Oscillator Fail Interrupt Flag bit

Bit 6

C2IF: Comparator C2 Interrupt Flag bit

Bit 5

C1IF: Comparator C1 Interrupt Flag bit

Bit 4

EEIF: EE Write Operation Interrupt Flag bit

Bit 3

BCLIF: Bus Collision Interrupt Flag bit

Bit 2

ULPWUIF: Ultra Low-Power Wake-up Interrupt Flag bit

Bit 1

Unimplemented: Read as 0

Bit 0

CCP2IF: CCP2 Interrupt Flag bit

is

bit 7 OSFIF: Oscillator Fail Interrupt Flag bit


1 = System oscillator failed, clock input has changed to INTOSC (must be cleared
in software)
0 = System clock operating
bit 6 C2IF: Comparator C2 Interrupt Flag bit
1 = Comparator output (C2OUT bit) has changed (must be cleared in software)

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

0 = Comparator output (C2OUT bit) has not changed


bit 5 C1IF: Comparator C1 Interrupt Flag bit
1 = Comparator output (C1OUT bit) has changed (must be cleared in software)
0 = Comparator output (C1OUT bit) has not changed
bit 4 EEIF: EE Write Operation Interrupt Flag bit
1 = Write operation completed (must be cleared in software)
0 = Write operation has not completed or has not started
bit 3 BCLIF: Bus Collision Interrupt Flag bit
1 = A bus collision has occurred in the MSSP when configured for I2C Master
mode
0 = No bus collision has occurred
bit 2 ULPWUIF: Ultra Low-Power Wake-up Interrupt Flag bit
1 = Wake-up condition has occurred (must be cleared in software)
0 = No Wake-up condition has occurred
bit 1 Unimplemented: Read as 0
bit 0 CCP2IF: CCP2 Interrupt Flag bit
Capture mode:
1 = A TMR1 register capture occurred (must be cleared in software)
0 = No TMR1 register capture occurred
Compare mode:
1 = A TMR1 register compare match occurred (must be cleared in software)
0 = No TMR1 register compare match occurred
PWM mode:
Unused in this mode
PCON (POWER CONTROL REGISTER):
El Control de Potencia (PCON) registro (ver Registro 2-8) contiene bits de la bandera
para diferenciar entre un:
Power-on reset (POR)
Restablecer Brown-out (BOR)
Restablecer Watchdog Timer (WDT)
Restablecer MCLR externo
El registro PCON tambin controla la Ultra Low-Power Wake-up y el software permiten
el BOR.
Leyenda
R=Readable bit
-n= Value at POR

W= Writable Bit U= Uniplemented bit, read as


0
1= Bit is set
0=Bit is cleared
x=
Bit
unknown

Numero de Bit

Interrupcion

Bit 7

Unimplemented: Read as 0

Bit 6

Unimplemented: Read as 0

Bit 5

ULPWUE: Ultra Low-Power Wake-up Enable bit

SPTIMO ELECTRNICA A

is

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

Bit 4

SBOREN: Software BOR Enable bit(1)

Bit 3

Unimplemented: Read as 0

Bit 2

Unimplemented: Read as 0

Bit 1

POR: Power-on Reset Status bit

Bit 0

BOR: Brown-out Reset Status bit

bit 7-6 Unimplemented: Read as 0


bit 5 ULPWUE: Ultra Low-Power Wake-up Enable bit
1 = Ultra Low-Power Wake-up enabled
0 = Ultra Low-Power Wake-up disabled
bit 4 SBOREN: Software BOR Enable bit(1)
1 = BOR enabled
0 = BOR disabled
bit 3-2 Unimplemented: Read as 0
bit 1 POR: Power-on Reset Status bit
1 = No Power-on Reset occurred
0 = A Power-on Reset occurred (must be set in software after a Power-on Reset
occurs)
bit 0 BOR: Brown-out Reset Status bit
1 = No Brown-out Reset occurred
0 = A Brown-out Reset occurred (must be set in software after a Brown-out
Reset occurs)
Note 1: BOREN<1:0> = 01 in the Configuration Word Register 1 for this bit to control
the BOR.
INTERRUPCIONES PCL y PCLATH
El registro llamado PCL, ubicado en la posicin 0x02 en el banco de memoria, tiene
mucho que ver con el flujo del programa, puesto que le asigna un nmero a cada lnea
de cdigo.
La primera instruccin, tiene una posicin indicada con un nmero en el registro PCL,
cuando se accede a esa posicin, se lee la instruccin, se decodifica, y luego se ejecuta,
una vez echo esto, el reloj del micro incrementa al contador de programa (PCL) en un
unidad, esto hace que el PCL apunte a la segunda instruccin, ahora se lee esta
segunda instruccin, se decodifica y tambin se ejecuta. Nuevamente, el reloj del
sistema incrementa el PCL para que apunte a la tercera instruccin, la decodifique y la
ejecute. Este proceso se repite hasta que termina el programa, cuando encuentra un
END.
En si lo que genera es una interrupcin de conteo.

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

Figura 2.1: Interrupciones de conteo


PC.- contador de programa, es de 13 bits de ancho. El byte bajo proviene del registro
PCL (Contador de programa en byte bajo), que es un registro de escritura. El byte alto
(PCH-Contador de programa en byte alto) (PC <12: 8>) no lee ni escribe y proviene de
PCLATH.
En cualquier Reset, el PC se borra. Las dos situaciones para cargar PC:
Por escritura en PCL (PCLATH <4: 0> PCH).
Por carga al PC durante se Llama (GOTO, CALL) GOTOinstruction (PCLATH <4: 3>
PCH).

Figura 2.2: Funcionamiento de la instruccin GOTO


La ejecucin de cualquier instruccin con el registro PCL simultneamente con el
Programa Contador de PC <12: 8> bits (PCH) es usado para ser reemplazado por el
contenido del registro PCLATH. Esto permite que la totalidad contenido del
contador de programa puedan ser cambiados por escribir 5 bits superiores al
registro PCLATH.
Cuando los 8 bits ms bajos se escriben en el registro PCL, todos los 13 bits del
contador de programa cambiara los valores contenidos en el registro y los PCLATH
se mantendran en el registro PCL.
Un GOTO computarizada se logra mediante la adicin de un desplazamiento para
el contador de programa (ADDWF PCL). Este ejercido salta en una tabla de consulta
o tabla de rama programa (GOTO computarizada) modificando el registro PCL.
Suponiendo que PCLATH se establece en el mesa de direccin de inicio, si la
longitud de la tabla es mayor que 255 instrucciones o si los 8 bits ms bajos de la

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

memoria direccin de rueda sobre de 0xFF a 0x00 en el medio de la tabla, PCLATH


debe incrementarse para cada vuelco direccin que se produce entre la mesa de
inicio y la ubicacin de destino dentro de la tabla.
Interrupciones PIC 18F4550 diferente del PIC 16F887:
Interrupcin
GIE/GIEH: Global Interrupt Enable bit

Funcin

When IPEN = 0:

1 = Enables all unmasked interrupts


0 = Disables all interrupts
1 = Enables all high priority interrupts
0 = Disables all high priority interrupts

When IPEN = 1:

PEIE/GIEL: Peripheral Interrupt Enable


bit
When IPEN = 0:

1 = Enables all unmasked peripheral


interrupts
0 = Disables all peripheral interrupts

When IPEN = 1:

1 = Enables all low priority peripheral


interrupts
0 = Disables all low priority peripheral
interrupts

TMR0IE: TMR0 Overflow Interrupt


Enable bit

1 = Enables the TMR0 overflow interrupt


0 = Disables the TMR0 overflow interrupt

INT0IE: INT0 External Interrupt Enable


bit

1 = Enables the INT0 external interrupt


0 = Disables the INT0 external interrupt

TMR0IF: TMR0 Overflow Interrupt Flag


bit
INT0IF: INT0 External Interrupt Flag bit

1 = TMR0 register has overflowed (must


be cleared in software)
0 = TMR0 register did not overflow
1 = The INT0 external interrupt occurred
(must be cleared in software)
0 = The INT0 external interrupt did not
occur

INTEDG0: External Interrupt 0 Edge


Select bit

1 = Interrupt on rising edge


0 = Interrupt on falling edge

INTEDG1: External Interrupt 1 Edge


Select bit

1 = Interrupt on rising edge


0 = Interrupt on falling edge

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

INTEDG2: External Interrupt 2 Edge


Select bit

1 = Interrupt on rising edge


0 = Interrupt on falling edge

TMR0IP: TMR0 Overflow Interrupt


Priority bit

1 = High priority
0 = Low priority

INT2IP: INT2 External Interrupt Priority


bit

1 = High priority
0 = Low priority

INT1IP: INT1 External Interrupt Priority


bit

1 = High priority
0 = Low priority
Unimplemented: Read as 0

INT2IE: INT2 External Interrupt Enable


bit

1 = Enables the INT2 external interrupt


0 = Disables the INT2 external interrupt

INT1IE: INT1 External Interrupt Enable


bit

1 = Enables the INT1 external interrupt


0 = Disables the INT1 external interrupt
Unimplemented: Read as 0

INT2IF: INT2 External Interrupt Flag bit

1 = The INT2 external interrupt occurred


(must be cleared in software)
0 = The INT2 external interrupt did not
occur

INT1IF: INT1 External Interrupt Flag bit

1 = The INT1 external interrupt occurred


(must be cleared in software)
0 = The INT1 external interrupt did not
occur

SPPIF: Streaming Parallel Port


Read/Write Interrupt Flag bit(1)

1 = A read or a write operation has taken


place (must be cleared in software)
0 = No read or write has occurred

OSCFIF: Oscillator Fail Interrupt Flag bit

1 = System oscillator failed, clock input


has changed to INTOSC (must be cleared
in software)
0 = System clock operating

CMIF: Comparator Interrupt Flag bit

1 = Comparator input has changed (must


be cleared in software)
0 = Comparator input has not changed

USBIF: USB Interrupt Flag bit

1 = USB has requested an interrupt (must


be cleared in software)
0 = No USB interrupt request

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

HLVDIF: High/Low-Voltage Detect


Interrupt Flag bit

1 = A high/low-voltage condition occurred


(must be cleared in software)
0 = No high/low-voltage event has
occurred

TMR3IF: TMR3 Overflow Interrupt Flag


bit

1 = TMR3 register overflowed (must be


cleared in software)
0 = TMR3 register did not overflow

SPPIE: Streaming Parallel Port


Read/Write Interrupt Enable bit(1)

1 = Enables the SPP read/write interrupt


0 = Disables the SPP read/write interrupt

OSCFIE: Oscillator Fail Interrupt Enable


bit

1 = Enabled
0 = Disabled

CMIE: Comparator Interrupt Enable bit

1 = Enabled
0 = Disabled

USBIE: USB Interrupt Enable bit

1 = Enabled
0 = Disabled

HLVDIE: High/Low-Voltage Detect


Interrupt Enable bit

1 = Enabled
0 = Disabled

TMR3IE: TMR3 Overflow Interrupt


Enable bit

1 = Enabled
0 = Disabled

SPPIP: Streaming Parallel Port


Read/Write Interrupt Priority bit(1)

1 = High priority
0 = Low priority

ADIP: A/D Converter Interrupt Priority


bit

1 = High priority
0 = Low priority

RCIP: EUSART Receive Interrupt Priority


bit

1 = High priority
0 = Low priority

TXIP: EUSART Transmit Interrupt Priority


bit

1 = High priority
0 = Low priority

SSPIP: Master Synchronous Serial Port


Interrupt Priority bit

1 = High priority
0 = Low priority

CCP1IP: CCP1 Interrupt Priority bit

1 = High priority
0 = Low priority

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

TMR2IP: TMR2 to PR2 Match Interrupt


Priority bit

1 = High priority
0 = Low priority

TMR1IP: TMR1 Overflow Interrupt


Priority bit

1 = High priority
0 = Low priority

OSCFIP: Oscillator Fail Interrupt Priority


bit

1 = High priority
0 = Low priority

CMIP: Comparator Interrupt Priority bit

1 = High priority
0 = Low priority

USBIP: USB Interrupt Priority bit

1 = High priority
0 = Low priority

EEIP: Data EEPROM/Flash Write


Operation Interrupt Priority bit

1 = High priority
0 = Low priority

BCLIP: Bus Collision Interrupt Priority bit

1 = High priority
0 = Low priority

HLVDIP: High/Low-Voltage Detect


Interrupt Priority bit

1 = High priority
0 = Low priority

TMR3IP: TMR3 Overflow Interrupt


Priority bit

1 = High priority
0 = Low priority

CCP2IP: CCP2 Interrupt Priority bit

1 = High priority
0 = Low priority

IPEN: Interrupt Priority Enable bit

1 = Enable priority levels on interrupts


0 = Disable priority levels on interrupts
(PIC16CXXX Compatibility mode)

SBOREN: BOR Software Enable bit(1)

For details of bit operation, see Register


4-1.

Unimplemented

Read as 0

RI

RESET Instruction Flag bit

INTERRUPCIONES SIMILARES ENTRE LOS PIC 16F887 Y 18F4550

Nombre

SPTIMO ELECTRNICA A

Parmetros

Funcin

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

REGISTRO INTCON
16F887

18F4550

INTCON
(registro de control de
interrupcin)

GIE
Global Interrupt Enable
bit (bit de habilitacin de
interrupciones globales)
GIEH(Interrupciones de alta
prioridad)
PEIE
Peripheral Interrupt Enable
bit (bit de habilitacin de
interrupciones perifricas)
GIEL (Interrupciones de baja
prioridad)

T0IE - TMR0IE
TMR0 Overflow Interrupt
Enable bit (bit de
habilitacin de
interrupciones por el
desbordamiento del
temporizador Timer0)

SPTIMO ELECTRNICA A

16f887
INTCON
18F4550
INTCON, INTCON2,
INTCON3

Interrupcin externa
1 - Interrupciones
habilitadas a nivel global
0 - Interrupciones
deshabilitadas a nivel
global.
Interrupcin externa
1 - Interrupciones de
perifricos
deshabilitadas a nivel
global
0 - Interrupciones de
perifricos habilitadas a
nivel global.
Interrupcin externa
1 - Habilita
interrupciones por
Timer0.
0 - Deshabilita
interrupciones por
Timer0.

El registro INTCON contiene


varios bits de habilitacin y
de bandera para el
desbordamiento en el
registro TMR0, e
interrupciones por el
cambio del estado en el
puerto PORTB y las
interrupciones externas en
el pin INT
Controla simultneamente
todas las fuentes de
interrupciones posibles.

Es similar al bit GIE, sin


embargo controla
interrupciones habilitadas
por los perifricos. No
influye interrupciones
causadas por el
temporizador Timer0 o por
el cambio del estado en el
puerto PORTB o por el
cambio en el pin RB0/INT.
Controla interrupciones
causadas por el
desbordamiento del Timer0

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

INTE
External Interrupt Enable
bit (bit de habilitacin de la
interrupcin externa)

RBIE
RB Port Change Interrupt
Enable bit (bit de
habilitacin de
interrupciones por cambios
en el puerto PORTB)

T0IF- TMR0IF
TMR0 Overflow Interrupt
Flag bit (bit de bandera de
interrupcin por el desbor
damiento del Timer0)

INTF- INT0IF
External Interrupt Flag
bit (bit de bandera de
interrupcin externa en INT)

RBIF
RB Port Change Interrupt
Flag bit (Flag de la
interrupcin por cambio en
el Puerto B)

SPTIMO ELECTRNICA A

Interrupcin externa
1 - Habilita
interrupciones externas
INT.
0 - Deshabilita
interrupciones externas
INT.
Interrupcin externa
1 - Habilita
interrupciones por
cambio en el puerto
PORTB.
0 - Deshabilita
interrupciones por
cambio en el puerto
PORTB.

Controla interrupciones
causadas por el cambio del
estado lgico en el pin de
entrada RB0/INT en el caso
del 16F887, en el caso del
18F4550 los pines de
entrada con BR0, RB1, RB2

Cuando se configuran como


entradas, los pines en el
puerto PORTB pueden
causar una interrupcin al
cambiar el estado lgico.
Este bit determina si una
interrupcin va a ocurrir.

1 - En el registro del
Timer0 ha ocurrido
desbordamiento (esta
bandera debe volverse a
0 por software).
0 - En el registro del
Timer0 no ha ocurrido
desbordamiento.

Detecta el desbordamiento
en el registro del
temporizador Timer0, es
decir el contador se pone a
cero.

Interrupcin externa
1 - Ha ocurrido una
interrupcin externa por
INT (esta bandera debe
volverse a 0 por
software)
0 - No ha ocurrido una
interrupcin externa por
INT.

Detecta el cambio en el
estado lgico en el o los
pines INT

1 - Al menos uno de los


pines de E/S de
propsito general en el
puerto B ha cambiado de
valor. (Despus de leer el
puerto B, el bit RBIF
debe volverse a 0 por

Detecta cualquier cambio


del estado lgico de alguno
de los pines de entrada en
el puerto PORTB.

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

software).
0 - Ninguno de los pines
de E/S de propsito
general en el puerto B ha
cambiado de valor.
Registro PIE1 (PERIPHERAL INTERRUPT ENABLE REGISTER 1)
Contiene los bits de habilitacin de interrupciones perifricas.
16f887

18F4550

ADIE
A/D Converter Interrupt
Enable bit (bit de
habilitacin de
interrupciones del
convertidor A/D)
RCIE
EUSART Receive Interrupt
Enable bit (bit de
habilitacin de
interrupciones de recepcin
del EUSART)
TXIE
EUSART Transmit Interrupt
Enable bit (bit de
habilitacin de
interrupciones de
transmisin del EUSART)
SSPIE
Master Synchronous Serial
Port (MSSP) Interrupt
Enable bit (bit de
habilitacin de la
interrupcin del puerto
serie sncrono maestro
SPTIMO ELECTRNICA A

1 - Habilita la
interrupcin ADC.
0 - Deshabilita la
interrupcin ADC.

Habilita las interrupciones


del convertido A/D

1 - Habilita la
interrupcin de
recepcin del EUSART.
0 - Deshabilita la
interrupcin de
recepcin del EUSART.

Habilita las interrupciones


de recepcin sncrona
EUSART

1 - Habilita la
interrupcin de
transmisin del EUSART.
0 - Deshabilita la
interrupcin de
transmisin del EUSART.

Habilita las interrupciones


de transmisin sncrona
EUSART

1 - Habilita la
interrupcin del MSSP.
0 - Deshabilita la
interrupcin del MSSP.

Habilita generar una


peticin de interrupcin
despus de cada
transmisin de datos por el
mdulo de comunicacin
serie sncrona (modo SPI o
I2C).

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

(MSSP)
CCP1IE
CCP1 Interrupt Enable
bit (bit de habilitacin de la
interrupcin del mdulo 1
de
Comparacin/Captura/PWM
- CCP1)
TMR2IE
TMR2 to PR2 Match
Interrupt Enable bit (bit de
habilitacin de la
interrupcin de igualdad
entre TMR2 y PR2)
TMR1IE
TMR1 Overflow Interrupt
Enable bit (bit de
habilitacin de la
interrupcin de
desbordamiento del
temporizador Timer1)

1 - Habilita la
interrupcin CCP1.
0 - Deshabilita la
interrupcin CCP1.

Permite generar una


peticin de interrupcin en
el mdulo CCP1 utilizado
para procesamiento de la
seal PWM.

1 - Habilita la
interrupcin de igualdad
entre TMR2 y PR2.
0 - Deshabilita la
interrupcin de igualdad
entre TMR2 y PR2.

Habilita una interrupcin si


TMR2 y PR2 son iguales

1 - Habilita la
interrupcin de
desbordamiento del
temporizador Timer1.
0 - Deshabilita la
interrupcin de
desbordamiento del
temporizador Timer1.

Habilita generar una


peticin de interrupcin
despus de cada
desbordamiento en el
registro del temporizador
Timer1, es decir el contador
se pone a cero.

Registro PIE2 (PERIPHERAL INTERRUPT ENABLE REGISTER 2)


El registro PIE2 tambin contiene varios bits de habilitacin de interrupciones.
16F887

18F4550

OSFIE
Oscillator Fail Interrupt
Enable bit (bit de
habilitacin de la
interrupcin de fallo en el
oscilador)
EEIE
EEPROM Write Operation
SPTIMO ELECTRNICA A

1 - Habilita la
interrupcin de fallo en
el oscilador.
0 - Deshabilita la
interrupcin de fallo en
el oscilador.

Habilita la interrupcin si se
produce algn tipo de fallo
en el oscilador

1 - Habilita la
interrupcin de escritura

Habilita las interrupciones


de escritura en la memoria

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

Interrupt Enable bit (bit de


habilitacin de la
interrupcin de escritura en
la memoria EEPROM)

en la memoria EEPROM.
0 - Deshabilita la
interrupcin de escritura
en la memoria EEPROM.

EEPROM

BCLIE

1 - Habilita la
interrupcin de colisin
de bus.
0 - Deshabilita la
interrupcin de colisin
de bus.

Habilita la interrupcin si se
produce una colisin en el
bus

1 - Habilita la
interrupcin del CCP2.
0 - Deshabilita la
interrupcin del CCP2.

Habilita la interrupcin del


mdulo 2 de
Comparacin/Captura/PWM

Interrupcin externa
1 - Interrupcin por
flanco ascendente
0 - Interrupcin por
flanco descendente
16f887
Una sola interrupcin
INTEDG
18F4550
Tres interrupciones:
INTEDG0, INTEDG1,
INTEDG2

Ejecuta interrupciones
externas en dependencia
del flanco activo que se
configure (subida o bajada)

Bus Collision Interrupt


Enable bit (bit de
habilitacin de la
interrupcin de colisin de
bus)
CCP2IE
CCP2 Interrupt Enable bit
(bit de habilitacin de la
interrupcin del mdulo 2
de
Comparacin/Captura/PWM
(CCP2)

INTEDG
Interrupt Edge Select bit (bit
selector de flanco activo de
la interrupcin externa)

III) APORTE GRUPAL:


Hoy en da los microcontroladores constituyen una gran ventaja, ya que nos
permite controlar, programar y sincronizar tareas electrnicas. Existe gran
diversidad de microcontroladores, y se puede elegir entre diversas caractersticas
que uno no tiene pero otro si, como cantidad de puertos, cantidad de entradas y
salidas, conversor Analgico- Digital, cantidad de memoria, espacio fsico, y este
tipo de cualidades que nos permiten tener una mejor eleccin de este dispositivo.
Los microcontroladores cuentan con una gran variedad de aplicaciones, debido a
su gran velocidad y tamao reducido. Cada PIC ayuda a cumplir funciones
especficas y es de gran ayuda para los trabajos tecnolgicos que se deseen
realizar.

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

Para la utilizacin de lo microcontroladores y su programacin se debe determinar


que fusibles tiene cada PIC y cada interrupcin para poder tener un programa
ptimo para ser utilizado.
IV) BIBLIOGRAFA:
Henao, C. A., & Duque Cardona, E. (2009). Programando microcontroladores
PIC en lenguaje C. Scientia.
Greaves, C. (2009). Utilizacin del PICkit 2 Debug Express de MICROCHIP para
construir un teremn. Revista espaola de electrnica, (654), 38-43.
Angulo Usategui, J. M., & Martnez, A. (2003). Microcontroladores PIC, Diseo
prctico de aplicaciones. Ed. McGraw Hill, 3era edicin, Madrid.
Prez, F. E. V., & Areny, R. P. (2007). Microcontroladores: fundamentos y
aplicaciones con PIC (Vol. 1149). Marcombo.
Ruge, I. A. R. (2008). Mtodo bsico para implementar un controlador digital
pid en un microcontrolador pic para desarrollo de aplicaciones a bajo costo.
GITEINCO FusagasugaColombia.

Microchip Technology Inc., (2007). Datasheet PIC 16F887 de MICROCHIP,


capitulo 14.1, 14.2, 14.3, 206-210.
Joel O. Campos Prez, Electroswaldo (2009). Curso bsico de
microcontroladores. Grupo Estudiantil Inventronica

Benchimol Daniel, (2011). MICROCONTROLADORES, funcionamiento,


programacin y aplicaciones prcticas, capitulo 5, pg. 120-125

Microchip Technology Inc., (2006). Datasheet PIC 18F4550 de MICROCHIP,


capitulo 15.1.2, 141-142.
Microchip Technology Inc., (2006). Datasheet PIC 18F4550 de MICROCHIP,
capitulo 21.0, 259-261.
Microchip Technology Inc., (2006). Datasheet PIC 18F4550 de MICROCHIP,
capitulo 12.3.2, 131.
Fernando E. Valdes Perez, Pallas Arenis (2007). Microcontroladores:
fundamentos y aplicaciones con PIC (Vol. 1149). Marcombo.
Eduardo Garcia Breijo, Compilador C CCS y simulador Proteus para
microcontroladores PIC, (2009). Segunda Edicin Marcombo.
http://juliozebadua.blogspot.com/2012/10/configuracion-de-fuses-pic18f4550en.html
http://juliozebadua.blogspot.com/2012/10/configuracion-de-fuses-pic18f4550en_15.html#uds-search-results

http://www.ucontrol.com.ar/forosmf/programacion-en-c/ccs-softwarecalculadora-cientifica-grafica/20/?wap2
Microchip Technology Incorporated (2007). Data Sheet 28/40/44-Pin, Enhanced
Flash-Based 8-Bit CMOS microcontrollers with nanoWatt Technology
http://ww1.microchip.com/downloads/en/DeviceDoc/41291D.pdf Printed in
the U.S.A, All Rights Reserved.

SPTIMO ELECTRNICA A

MICROCONTROLADORES

UNIVERSIDAD TCNICA DE AMBATO


FACULTAD DE INGENIERA EN SISTEMAS, ELECTRNICA E INDUSTRIAL
CARRERA DE ELECTRNICA Y COMUNICACIONES

Microchip Technology Incorporated (2007). Data Sheet 28/40/44-Pin, Enhanced


Flash-Based 8-Bit CMOS microcontrollers with nanoWatt Technology
http://ww1.microchip.com/downloads/en/DeviceDoc/41291D.pdf Printed in
the U.S.A, All Rights Reserved.
Fernando E. Valds Prez, Ramn Palls Areny , MICROCONTROLADORES:
FUNDAMENTOS Y APLICACIONES CON PIC, MARCOMBO, S.A. 2007.
Armando Astarloa Cullar, Aizol Zuloaga Izaguierre, SISTEMAS DE
PROCESAMIENTO DIGITAL, Jacaryan, S.A. 2008.
Cnovas Andrs, Manual CCS Espaol, Scribd.com, 2014, disponible en:
https://es.scribd.com/doc/19658135/Manual-CCS-Espanol.
Microchip Technology Inc., PIC 16F/882/883/884/886/887, 2006, Pag. 31-38,
disponible
en:
http://ww1.microchip.com/downloads/en/DeviceDoc/41291F.pdf
Microchip Technology Inc., PIC 18F2455/2550/4455/4550, 2006, Pag. 99-111,
disponible
en:
http://ww1.microchip.com/downloads/en/devicedoc/39632c.pdf

SPTIMO ELECTRNICA A

MICROCONTROLADORES

Das könnte Ihnen auch gefallen