Sei sulla pagina 1di 5

DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA

MICROPROCESADORES

CONSULTA

TEMA: interrupciones y puertos del Z80

NRC: 3195

DOCENTE:
ING. Derlin Morocho Checa

AUTOR:
JOEL LEMA

Sangolquí, 14 de Enero de 2019


Interrupciones del Procesador Z80
Esta forma de transferencia de datos se
utiliza para comunicarse con dispositivos
que generan datos en forma asíncrona.

El proceso de interrupción permite al


microprocesador ejecutar el programa
mientras le da servicio bajo demanda a
diferentes periféricos.
 Un dispositivo externo puede interrumpir al Z80 por medio de la señal INT, por lo cual
el microprocesador debe revisar el estado de esta señal continuamente
 Cuando el Z80 es interrumpido, la ejecución del programa es transferida a una locación
de memoria especifica, para obtenerlas instrucciones que nos permitirán manejar esta
interrupción
 El grupo de programas que atienden a las interrupciones son conocidos como RUTINAS
DE SERVICIO.

Interrupciones Enmascaradas:
 Las rutinas enmascarables son controladas por los
flipflops de habilitación a la interrupción (IFF1, IFF2), son
internos al microprocesador

Para causar una interrupción debemos

1. Habilitar las interrupciones (software).


2. IFF1 e IFF2 deben ser activados (puestos a uno).
3. La entrada INT (pin 16) debe ir a cero por una señal del
dispositivo externo por el tiempo.
4. suficiente para que el Z80 sea capaz de detectarla (hardware.

Instrucciones Especiales.

EI
 Es una instrucción de 1 byte
 Habilita las interrupciones por medio de poner a uno los flip-flops IFF1 e IFF2
DI
 Es una instrucción de 1 byte
 Deshabilita las interrupciones por medio de poner en cero los flip-flops IFF1 e IFF2
 Se utiliza para deshabilitar las instrucciones en secciones de código que no puedan ser
interrumpidas (Secciones Criticas)

MODOS DE INTERRRUPCION.

Existen tres modos de interrupción en el Z80. Para indicar cuál es el modo de interrupción en
el que nuestro sistema trabajara debemos usar las siguientes instrucciones:

IM 0
Modo 0
 La ejecución del programa se transfiere a uno de las 8 locaciones de memoria de
0000H a la 0038.

IM 1
Modo 1
 La ejecución del programa se transfiere a la locación de memoria 0038H.

IM 2
Modo 2
 La ejecución de memoria se transfiere a cualquier locación de memoria.

Interrupciones No Enmascarables.

El Z80 almacena el estado de los flip-flops de interrupción y los deshabilita para evitar
interrupciones

El programa es transferido a la locación 0066H. No requiere hardware externo para la


transferencia de control del programa

La rutina de servicio debe terminar con RETN. Esta instrucción toma la dirección del tope del
stack para regresar al punto de interrupción, y además recobra el estado original de los flip-
flops de interrupción. Por lo tanto, habilita las interrupciones enmascarable y regresa al punto
de interrupción.

Resumen:

Z80 PUERTOS

El Z80 PIO (Parallel I/O), es un chip de 40 pines


diseñado especialmente para ser utilizado como
interfaz entre el microprocesador Z80 y
periféricos que acepten 8 bits en paralelo.
Contiene dos puertos de 8 bits, que en la Fig. 27
se muestran como PA7..PA0 (Puerto A) y
PB7..PB0 (Puerto B). Cada uno de ellos puede
ser programado ya sea como puerto de entrada
o de salida.

Los datos se transfieren entre el PIO y la CPU


por el bus de datos, D7..D0. Existen seis líneas
que permiten al microprocesador controlar la operación del PIO.
 B/A\ (Port B/A select) selecciona uno de los puertos:

= 0 ==> puerto A

= 1 ==> puerto B.

 C/D\ (Control/Data select) indica al PIO el tipo de datos que se transfieren a través del
bus de datos: = 1 ==> el bus de datos tiene una palabra de comandos para el PIO.

= 0 ==> el bus de datos contiene datos.

 CE\ (Chip enable) un cero en esta pata indica al PIO que ha sido seleccionado para una
operación de I/O.
 M1\ generalmente se conecta aquí la línea de igual nombre del Z80, que el PIO utiliza
junto con IORQ\ para detectar ciclos de reconocimiento de interrupciones. Veremos
que interviene también en el reset del PIO.
 IORQ\ y RD\ se conecta a las patas de igual nombre del Z80.

Modos de Funcionamiento

El puerto A puede programarse en cualquiera de los 4 modos, en cambio el B puede estar solo
en modo 0, 1 ó 3.

1. Modo 0: SALIDA

Los datos se escriben en el registro de salida del PIO ejecutando una instrucción OUT con
la dirección de E/S apropiada

2. Modo 1: ENTRADA

El registro de entrada de datos está activo y el de salida inactivo.

3. Modo 2: BIDIRECCIONAL

Es la superposición de los dos modos anteriores. sólo uno de los puertos (el fabricante
eligió el puerto A) puede ser utilizado en este modo.

4. Modo 3: E/S DE A BIT

En este modo, cada bit del puerto se define individualmente como entrada o salida.

Potrebbero piacerti anche