Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Practica Nº2
Practica Nº2
Nº2
LABORATORIO DE SISTEMAS
DIGITALES II
Realizado por:
Victorino Villamizar Delgado C.I.23.541.989
Grupo Nº10
PRE-LABORATORIO
1)Tipos de interrupciones externas que maneja el PIC 18F4550.
a) Fuentes de interrupción Externas (Enmascarables).
Interrupciones externas en terminales (PORTB 0, 1 y 2).
Cambios en niveles lógicos de terminales (PORTB 4, 5, 6 y 7)
Escritura/Lectura del puerto paralelo (Modo Esclavo).
Recepción en la USART.
Transmisión en la USART.
Transmisión/Recepción del puerto serial síncrono (Modo Maestro).
Captura o Comparación de los módulos CCP (1 y 2).
b) Fuentes de interrupción Externas (No Enmascarables).
Botón de RESET.
2)Priorización de interrupciones en el PIC 18F4550.
Podemos definir dos modos de interrupciones:
1. Modo de compatibilidad, la rutina de servicio de interrupciones (ISR) debe colocarse en la
posición 0x0008 de la memoria.
2. Modo de niveles de prioridad, las interrupciones de alta prioridad siguen saltando a la posición
0x0008, mientras que las de baja van a la 0x0018.
La elección de un modo u otro depende del valor del bit IPEN (Interrupt Priority Enable) del
registro RCON.
#define enable_priority_levels RCONbits.IPEN=1
#define disable_priority_levels RCONbits.IPEN=0
Interrupciones primarias: Cinco fuentes de interrupción tienen sus bits de habilitación
localizados en los registros INTCON. Estas fuentes de interrupción son referidas como
“interrupciones primarias”. Para habilitar estas interrupciones solo es necesario poner a ‘1’ el bit
GIE/GIEH del registro INTCON.
Interrupciones de periféricos: El PIC 18F4550 es capaz de generar solicitudes de interrupción para
cada una de sus banderas de interrupción localizadas en los registros PIE. Para habilitar una interrupción
por periférico además de habilitar el GIE/GIEH se debe poner a ‘1’ también el bit PEIE/GIEL ambos en
el registro INTCON.
- Se configurara el puerto A como salida. En los pines A0,A1,A2 yA3 conectaremos los led, uno para
cada banda empacadora de fruta.
A0 A1 A2 A3
Led-Fresa (Rojo) Led- Led-Pera(Verde) Led-Manzana(Azul)
Mango(Amarillo)
- Se configurara el puerto B cono entrada. En este puerto se conectaran los generadores de pulso y los
pulsadores encargados de reactivar las bandas y reiniciar los contadores.
B0 B1 B2 B4 B5 B6 B7
GP-1 GP-2 GP-3 Pulsador(Fresa Pulsador Pulsador (Pera) Pulsador
) (Mango) (Manzana)
- Se configurara el puerto C como salida. En este puerto se conectaran los pines de control de la LCD
grafica.
C0 C1 C2 C3 C4 C5
CS2 CS1 RS R/W E RST
- El puerto D se configuro como salida y en el se conectaran los pines de transferencia de datos de
la LCD grafica.
D0 D1 D2 D3 D4 D5 D6 D7
DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7
Llama Inicializa la
Habilita las interrupciones
inicio_LCD(); LCD
Llama la
función
fresa()
NO
Reinicia
Borra número de Si SI contador=0
conteo y muestra input(pin_B4)== Borra
“FULL” en la LCD 0 “FULL” en la
LCD
NO
Llama la función Aumento en 1
int_EXT1
mango_y_pera() contaa1
Si
Borre numero Aumente en 1
Contador2< SI Encienda led2
anterior de contador2 y Variable
20 && 100ms y luego
conteo en la muestro en la contaa2=contaa2+2
contaa2- apague
LCD LCD
contaa1=0
NO
Borra número Reinicia
Si SI de conteo y SI variables
Si Borra “FULL”
Contador2> muestra contador2=0
input(pin_B5)==0 en la LCD
19 “FULL” en la contaa2=2
NO LCD contaa1=0
NO
Sale de int_EXT1
int_EXT2
Llama la
función
manzana()
NO
Reinicia
Borra número de Si SI contador3=0
conteo y muestra input(pin_B7)== Borra
“FULL” en la LCD 0 “FULL” en la
LCD
NO