You are on page 1of 10

El PPI intel 8255

El PPI intel 8255


Interfase para Perif
Interfase para Perif

ricos Paralelo
ricos Paralelo
Microprocesadores
Carlos Canto Q.
EL PPI 8255
Microprocesadores
Carlos Canto Q.
EL PPI 8255
El circuito PPI (Interfaz Perif El circuito PPI (Interfaz Perif rica rica
Programable) 8255A de Intel es un Programable) 8255A de Intel es un
dispositivo programable de dispositivo programable de
entrada/salida de prop entrada/salida de prop sito general sito general
dise dise ando para ser usado con ando para ser usado con
microprocesadores Intel microprocesadores Intel. .
El PPI es un circuito integrado de 40 El PPI es un circuito integrado de 40
terminales terminales
de las cuales 24 son de de las cuales 24 son de
entrada/salida y se pueden entrada/salida y se pueden
programar individualmente en 2 programar individualmente en 2
grupos de 12 y se puede utilizar en 3 grupos de 12 y se puede utilizar en 3
diferentes modos de operaci diferentes modos de operaci n n. .
Contiene 3 puertos programables Contiene 3 puertos programables
paralelos de 8 bits paralelos de 8 bits
Cada puerto tiene un registro Cada puerto tiene un registro
Tiene tambi Tiene tambi n un registro de control n un registro de control
de los puertos de los puertos
Estructura Interna del PPI 8255A Estructura Interna del PPI 8255A
Grupo A
Puerto A
Grupo A
Puerto A
Grupo A
Puerto C
4 altos
Grupo A
Puerto C
4 altos
Grupo B
Puerto C
4 bajos
Grupo B
Puerto C
4 bajos
Grupo B
Puerto B
Grupo B
Puerto B
Control
del
grupo A
Control
del
grupo A
Buffer de
bus de
datos
Buffer de
bus de
datos
Lgica de
control
de
escritura/
lectura
Lgica de
control
de
escritura/
lectura
Control
del
grupo B
Control
del
grupo B
RD
WR
A0
A1
RESET
CS
D0-D7
E/S
PA0-PA7
E/S
PC7-PC4
E/S
PC3-PC0
E/S
PB7-PB0
BUS DE DATOS
INTERNO
8 BITS
Microprocesadores
Carlos Canto Q.
EL PPI 8255
BUS DE DATOS
La figura nos muestra la estructura
interna de este dispositivo.
Microprocesadores
Carlos Canto Q.
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
1
2
3
4
5
6
7
8
13
14
15
16
17
18
19
9
10
11
12
PA4
PA5
PA6
PA7
WR
RESET
D0
D1
D2
D3
D4
D5
D6
D7
VCC
PB7
PB6
PB5
PB4
PB3
RD
CS
GND
A1
A0
PC7
PC6
PC5
PC4
PC0
PC1
PC2
PC3
PB0
PB1
PB2
PA3
PA2
PA1
PA0
TIERRA GND
ALIMENTACIN +5V VCC
PUERTOC PC7-PC0
PUERTO B PB7-PB0
PUERTO A PA7-PA0
DIRECCIN DE PUERTOS A0,A1
ENTRADA DE ESCRITURA WR
ENTRADA DE LECTURA RD
SELECCIN DE CHIP CS
ENTRADA DE RESET RESET
BUS DE DATOS D0-D7
EL PPI 8255
DISTRIBUCI DISTRIBUCI N DE TERMINALES DEL 8255 N DE TERMINALES DEL 8255
Microprocesadores
Carlos Canto Q.
EL PPI 8255
Bus de datos en tri state 0 1 1 x x
Condicin ilegal 0 1 0 1 1
Bus de datos en tri state 1 x x x x
Funcin de deshabilitado . . . . .
Bus de datosreg. control 0 0 1 1 1
Bus de datospuerto C 0 0 1 0 1
Bus de datospuerto B 0 0 1 1 0
Bus de datospuerto A 0 0 1 0 0
operacin salida (escribir) . . . . .
Puerto CBus de Datos 0 1 0 0 1
Puerto Bbus de datos 0 1 0 1 0
Puerto Abus de datos 0 1 0 0 0
operacin de entrada (leer) CS WR RD A0 A1
Tabla de verdad de la operacin del
PPI 8255
PROGRAMACI
PROGRAMACI

N DEL PPI 8255


N DEL PPI 8255
Los 3 puertos se programan en grupos
El grupo A est formado por el puerto A y
la parte alta del puerto C
El grupo B est formado por el puerto B y
la parte baja del puerto C
Microprocesadores
Carlos Canto Q.
EL PPI 8255
Microprocesadores
Carlos Canto Q.
FORMATO DE
LA DEFINICIN
DEL MODO
D7
D7
D6
D6
D5
D5
D4
D4
D3
D3
D2
D2
D1
D1
D0
D0
PALABRA DE CONTROL
GRUPO B
GRUPO B
Puerto C (bits bajos)
1=entrada
0=salida
Puerto C (bits bajos)
1=entrada
0=salida
Puerto B
1=entrada
0=salida
Puerto B
1=entrada
0=salida
Seleccin de modo
0=modo 0
1=modo1
Seleccin de modo
0=modo 0
1=modo1
GRUPO A
GRUPO A
Puerto C (bits altos)
1=entrada
0=salida
Puerto C (bits altos)
1=entrada
0=salida
Puerto A
1=entrada
0=salida
Puerto A
1=entrada
0=salida
Seleccin de modo
00=modo 0
01=modo1
1x=modo2
Seleccin de modo
00=modo 0
01=modo1
1x=modo2
Bandera de activar modo
1=activo
Bandera de activar modo
1=activo
EL PPI 8255
D7
D7
D6
D6
D5
D5
D4
D4
D3
D3
D2
D2
D1
D1
D0
D0
bandera de activar/desactivar bit
0=activo
bandera de activar/desactivar bit
0=activo
Bit seleccionado
Bit set/ rest
1=set
0=reset
Bit set/ rest
1=set
0=reset
X X X
No importa
Microprocesadores
Carlos Canto Q.
FORMATO PARA ACTIVAR/DESACTIVAR UN BIT
DEL PUERTO C
PALABRA DE CONTROL
EL PPI 8255
B2 1 0 1 0 1 0 0 0
B1 1 1 0 0 1 1 0 0
B0 1 1 1 1 0 0 1 0
7 6 5 4 3 2 1 0
Caractersticas del 8255 operado en
modo 0
Se le asigna operaciones de entrada y salida a cada uno de los tres puertos
No se usa un protocolo (handshaking) para el intercambio de los datos. Los
datos simplemente se escriben a o leen de un puerto especfico
DEFINICIN FUNCIONAL BSICA DEL MODO 0
Se tiene 2 puertos de 8 bits y 2 de 4 bits.
Cualquier puerto puede ser entrada o salida
Las salidas tienen LATCH (cerrojo)
Las entradas no tiene LATCH
Hay 16 posibles configuraciones de entrada/salida en este modo
DEFINICIN FUNCIONAL BSICA DEL MODO 0
Se tiene 2 puertos de 8 bits y 2 de 4 bits.
Cualquier puerto puede ser entrada o salida
Las salidas tienen LATCH (cerrojo)
Las entradas no tiene LATCH
Hay 16 posibles configuraciones de entrada/salida en este modo
Microprocesadores
Carlos Canto Q.
EL PPI 8255
Diagrama de bloques funcional de la operacin del 8255
en modo 0
Microprocesadores
Carlos Canto Q.
EL PPI 8255
LATCH
LATCH
BUFFER
TRI STATE
BUFFER
TRI STATE
Perifrico
de
salida
Perifrico
de
salida
Bus de datos
Bus de datos
Puerto A
Puerto A
Selector de
puertos
Selector de
puertos 8255
CPU
WR
A0 A1
Tiene LATCH a la
salida, tal que el dato
enviado por el CPU
queda asegurado y
disponible para el
perifrico de salida. El
dato se retiene hasta
que se escriba uno
nuevo.
Tiene LATCH a la
salida, tal que el dato
enviado por el CPU
queda asegurado y
disponible para el
perifrico de salida. El
dato se retiene hasta
que se escriba uno
nuevo.
Diagrama de bloques funcional de la operacin del 8255
en modo 0
Microprocesadores
Carlos Canto Q.
EL PPI 8255
BUFFER
TRI STATE
BUFFER
TRI STATE
Perifrico
de
entrada
Perifrico
de
entrada
Bus de datos
Bus de datos
Puerto A
Puerto A
Selector de
puertos
Selector de
puertos
8255
CPU
RD
A0 A1
Operado como
entrada, no tiene
latch. Esto implica
que el perifrico de
entrada debe
sostener el dato
hasta que la CPU lo
lea .
Operado como
entrada, no tiene
latch. Esto implica
que el perifrico de
entrada debe
sostener el dato
hasta que la CPU lo
lea .
Ciclo de mquina de Entrada/Salida del Z80
Microprocesadores
Carlos Canto Q.
EL PPI 8255
Caractersticas del 8255 operado en Modo 1
(Strobed Input/Output)
DEFINICIN FUNCIONAL BSICA DEL MODO 1
El puerto A y el puerto B usan las lneas del puerto C para generar o aceptar
seales de handshaking en modo de pulsos (strobes).
Caractersticas:
Se tienen 2 grupos (grupos A y B)
Cada grupo contiene 8 bits de puerto de datos y 4 bits de puerto de control/datos.
Cada puerto de datos de 8 bit puede usarse como entrada o como salida
independientemente.
Tanto las entradas como las salidas se latchean.
El puerto de 4 bits se usa para control y status del puerto de datos de 8 bits.
Microprocesadores
Carlos Canto Q.
EL PPI 8255
La transferencia de datos de E/S hacia o de puertos especficos se realiza con
seales de control o de Handshaking. Es un modo de transferencia
concertada
Seales de Control cuando el Puerto (A o B) est definido
como ENTRADA
STB ( STB (Strobe Strobe Input Input): ): Un nivel bajo en esta entrada, carga los datos en el Un nivel bajo en esta entrada, carga los datos en el latch latch de entrada. de entrada.

IBF ( IBF (Input Input Buffer Full F/F): Buffer Full F/F): Un nivel alto en esta salida indica que el dato ya fue cargado Un nivel alto en esta salida indica que el dato ya fue cargado
en el en el latch latch de entrada. IBF se pone en alto por un nivel bajo en STB y se p de entrada. IBF se pone en alto por un nivel bajo en STB y se pone en bajo one en bajo
debido al flanco positivo de la entrada RD. debido al flanco positivo de la entrada RD.
INTR (Pedido de Interrupci INTR (Pedido de Interrupci n): n): Un nivel alto en esta salida se puede usar para Un nivel alto en esta salida se puede usar para
interrumpir al interrumpir al P P. INTR se pone en alto cuando STB est . INTR se pone en alto cuando STB est en 1, IBF est en 1, IBF est en 1 e INTE est en 1 e INTE est
en 1. Se pone en 0 con el flanco negativo de RD. en 1. Se pone en 0 con el flanco negativo de RD.
Microprocesadores
Carlos Canto Q.
EL PPI 8255
Microprocesadores
Carlos Canto Q.
EL PPI 8255
El 8255 operado en modo2
EL 8255 PROGRAMADO PARA OPERAR EN MODO 2 HACE EL 8255 PROGRAMADO PARA OPERAR EN MODO 2 HACE
BIDIRECCIONAL AL PUERTO A Y EL PUERTO C PROPORCIONA BIDIRECCIONAL AL PUERTO A Y EL PUERTO C PROPORCIONA
LAS L LAS L NEAS DE CONTROL DE LA TRANSFERENCIA NEAS DE CONTROL DE LA TRANSFERENCIA
Microprocesadores
Carlos Canto Q.
EL PPI 8255
El 8255 operado en modo2
OPERANDO SOLO COMO SALIDA
OPERANDO SOLO COMO ENTRADA
Microprocesadores
Carlos Canto Q.
EL PPI 8255
Ejemplo de Conexin del PPI con el Z80
Microprocesadores
Carlos Canto Q.
EL PPI 8255
X X 0 0 1 0 0 0
A0 A1 A2 A3 A4 A5 A6 A7
Seleccin de
puerto del
PPI
Seleccin del chip 8255
Direcciones
vlidas para el
PPI:
10h puerto A
11h puerto B
12H puerto C
13H r. control
Direcciones
vlidas para el
PPI:
10h puerto A
11h puerto B
12H puerto C
13H r. control
Z80
Z80
PPI
8255
PPI
8255
Bus de Datos
Bus de Datos
RST
RESET
RESET
RESET
CS
RD
WR
RD
WR
A0
A1
A0
A1
A2
A3
A4
A5
A6
A7
B
u
s

d
e

D
i
r
e
c
c
i
o
n
e
s

(
B
a
j
o
)
B
u
s

d
e

D
i
r
e
c
c
i
o
n
e
s

(
B
a
j
o
)
A
B
C
G1A
G1B
G2
74LS138
Circuito
de reset
Circuito
de reset
Puerto A
Puerto B
Puerto CL
Puerto CH
Grupo A
Grupo B
Y0
A3
A2
A6
A7
A5
A4
Use un decodificador 74LS138 para
asignarle al PPI una direccin base de 10H
IORQ

You might also like