Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ESPE
Microprocesadores
CONSULTA No. 1
SEGUNDO PARCIAL
NRC: 3193
Nombre:
Villavicencio Freddy
2. Objetivos
3. Marco teórico
El PPI 8255
El circuito PPI (Interfaz Periférica Programable) 8255A de Intel es un dispositivo programable
de entrada/salida de propósito general diseñado para ser usado con microprocesadores Intel.
El PPI es un circuito integrado de 40 terminales, de las cuales 24 son de entrada/salida y se
pueden programar individualmente en 2 grupos de 12 y se puede utilizar en 3 diferentes modos
de operación.
Contiene 3 puertos programables paralelos de 8 bits. Cada puerto tiene un registro. Tiene
también un registro de control de los puertos.
STB (Strobe Input): Un nivel bajo en esta entrada, carga los datos en el latch de entrada.
IBF (Input Buffer Full F/F): Un nivel alto en esta salida indica que el dato ya fue cargado
en el latch de entrada. IBF se pone en alto por un nivel bajo en STB y se pone en bajo
debido al flanco positivo de la entrada RD.
INTR (Pedido de Interrupción): Un nivel alto en esta salida se puede usar para
interrumpir al 𝑢P. INTR se pone en alto cuando STB está en 1, IBF está en 1 e INTR está
en 1. Se pone en 0 con el flanco negativo de RD.
Figura 10: Operación en modo 1 cuando el Puerto (A o B) está definido como Entrada.
Figura 12: El 8255 operado en modo 2; solo como entrada y solo como salida.
SW-SPDT
R5
D2 1k
1N4004
Reset
C5
1uF
U26:A
4
R21
CLK
2 5
S
D Q
1k
3
CLK U25 U27:A
8
6
Q
R
4 3 1 2
VCC
R Q CLK2
1
74LS74 7
DC 7404
5
CV
D19
RV1 LED-GREEN
20%
10k
GND
2 6
C4 TR TH
R22
1nF
330
1
C3 555
100uF
Bloque de contadores:
En este bloque se genera el conteo de los contadores para acceder a las localidades de la
memoria, cuando el conteo llega a 21 (10101). Se trunca los contadores por medio del buffer.
Hasta resetear los contadores para activar otro puerto del 8255.
U29
3 14
D0 Q0
4 13
D1 Q1
5 12
D2 Q2
6 11
D3 Q3
15
1
RCO
7
ENP
10
ENT
2 3 2
CLK CLK
9
LOAD
1
Reset MR
74161
U30
3 14
D0 Q0
4 13
D1 Q1
5 12
D2 Q2
6 11
D3 Q3
15
RCO
7
ENP
10
ENT
2
CLK
9
LOAD
1
MR
74161
U34
2 1
4 3
NAND_5
8255A
0 A0
0 A1
VDD
VSS
VEE
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
E
1
2
3
4
5
6
7
8
9
10
11
12
13
14
CLK2
U28
34 4
D0 PA0
33 3
D1 PA1
32 2
D2 PA2
31 1
D3 PA3
30 40
D4 PA4
29 39
D5 PA5
28 38
D6 PA6
27 37
D7 PA7
5
36
RD Figura
PB0 19: Activación Puerto A modo lectura.
18
19
WR PB1
9 20
A0 PB2
8 21
- Activación puerto C:
35
A1
RESET
PB3
PB4
22
23
PB5
6 U28 24
CS PB6
25
Se activa el puerto C en modo lectura, con la siguiente combinación:
34
33
D0
D1
PB7
PA0
PA1
4
3
14
32 PC0 2
D2 PA2 15
31 PC1 1
D3 PA3 16
30 PC2 40
D4 PA4 17
29 PC3 39
D5 PA5 13
28
27
D6
D7
PC4
PA6
PC5
PA7
PC6
38
12
37
11
10
0 A0
5 PC7 18
1
RD PB0
36 19
9
WR PB1
20 A1
A0
8255A PB2
8 21
A1 PB3
35 22
RESET PB4
23
6
CS
Figura 20: Combinación; puerto C salida de datos.
PB5
PB6
24
25
PB7
PC0
14 LCD6
15 LM016L
PC1
16
PC2
17
PC3
13
PC4
12
PC5
11
PC6
10
PC7
VDD
VSS
VEE
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
8255A
E
1
2
3
4
5
6
7
8
9
10
11
12
13
14
CLK2
Programación en memoria:
1 U3
34 4
D0 PA0
1 33
32
D1 PA1
3
2
D2 PA2
0 31
30
D3 PA3
1
40
D4 PA4
29 39
D5 PA5
28 38
D6 PA6
27 37
D7 PA7
5 18
0 36
RD
WR
PB0
PB1
19
9 20
0 8
A0
A1
PB2
PB3
21
35 22
RESET PB4
23
PB5
6 24
0 CS PB6
PB7
25
1 PC0
14
15
PC1
16
PC2
1
0
0
1
1
0
0
1
17
0 PC3
PC4
13
12 U4
PC5
0 PC6
11
10
7
A QA
13
PC7 1 12
B QB
2 11
C QC
6 10
8255A D QD
4 9
BI/RBO QE
5 15
RBI QF
U1 3 14
LT QG
2 18
A0 B0 7448
3 17
A1 B1
4 16
A2 B2
5 15
A3 B3
6 14
A4 B4
7 13
A5 B5
8 12 U5
A6 B6
9 11
A7 B7 7 13
A QA
1 12
19 B QB
CE 2 11
1 C QC
AB/BA 6 10
D QD
4 9
74LS245 BI/RBO QE
5 15
RBI QF
3 14
LT QG
7448
0 A1
U3
34 4
D0 PA0
33 3
D1 PA1
32 2
D2 PA2
31 1
D3 PA3
30 40
D4 PA4
29 39
D5 PA5
28 38
D6 PA6
27 37
D7 PA7
5 18
36
RD
WR
PB0
PB1
19 Figura 25: Activación Puerto A modo lectura.
9 20
A0 PB2
8 21
A1 PB3
- 35 Puerto B en modo escritura:
RESET PB4
22
23
PB5
6 24
CS PB6
25
Se activa el puerto B14en modo escritura, con la siguiente combinación:
PB7
PC0
15
PC1
16
PC2
17
PC3
0
13
PC4
PC5
12 A0
11
PC6
10
PC7
8255A
U3
1 A1
34 4
D0 PA0
33 3
32
D1 Figura 26:
PA1 Combinación; puerto B de escritura de datos.
2
D2 PA2
31 1
D3 PA3
30 40
D4 PA4
Se ingresan los datos por el puerto B:
29
28
39
D5
38
PA5
D6 PA6
27 37
D7 PA7
5 18
RD PB0
36 19
WR PB1
9 20
A0 PB2
8 21
A1 PB3
35 22
RESET PB4
23
PB5
6 24
CS PB6
25
PB7
14
PC0
15
PC1
16
PC2
1
1
1
1
1
1
0
0
17
PC3
13
PC4
12 U4
Figura 27: escritura de datos por el puerto B.
PC5
PC6
11
7 13
10 A QA
PC7 1 12
B QB
2 11
En el bis de datos D se8255A
puede visualizar los datos ingresados por el puerto B: 6
4
C
D
QC
QD
10
9
BI/RBO QE
5 15
RBI QF
3 14
LT QG
7448
DSW3
16 OFF ON 1
1 15 2
0
0
14 3
0 13 4
1
1
12 5
0 11 6
1
1
10 7
0 9 8
1
1
0 DIPSW_8
1 U3
34 4
D0 PA0
1 33
32
D1 PA1
3
2
D2 PA2
1 31
30
D3 PA3
1
40
D4 PA4
29 39
D5 PA5
28 38
D6 PA6
27 37
D7 PA7
5 18
0Figura 28: Visualización
36
RD PB0
WR por el busPB1
de datos
19 D.
9 20
A0 PB2
8 21
A1 PB3
35 22
RESET PB4
23
PB5
6 24
CS PB6
25
PB7
14
PC0
15
PC1
16
PC2
17
PC3
- Puerto C en modo lectura:
En este puerto se conecta el transmisor/receptor seguido de dos decodificador 74LS247, que
permiten
U3 la visualización de los números BCD ingresados por el bus de datos D.
34 4
D0 PA0
33 3
D1 PA1
Se activa el puerto C en modo lectura, con la siguiente combinación:
32
31
D2
D3
PA2
PA3
2
1
30 40
D4 PA4
29 39
D5 PA5
28 38
D6 PA6
27 37
5
36
D7
RD
PA7
PB0
18
19
0 A0
WR PB1
9
8
35
A0
A1
RESET
PB2
PB3
PB4
20
21
22
1 A1
23
PB5
6 24
CS PB6
PB7
25 Figura 29: Combinación; puerto C salida de datos.
14
PC0
15
PC1
16
PC2 1
0
0
1
1
0
0
1
17
PC3
13
PC4
12 U4
PC5
11
PC6 7 13
10 A QA
PC7 1 12
B QB
2 11
C QC
6 10
8255A D QD
4 9
BI/RBO QE
5 15
RBI QF
U1 3 14
LT QG
2 18
A0 B0 7448
3 17
A1 B1
4 16
A2 B2
5 15
A3 B3
6 14
A4 B4
7 13
A5 B5
8 12 U5
A6 B6
9 11
A7 B7 7 13
A QA
1 12
19 B QB
CE 2 11
1 C QC
AB/BA 6 10
D QD
4 9
74LS245 BI/RBO QE
5 15
RBI QF
3 14
LT QG
7448
DSW1
16 OFF ON 1
0 15 2
0
0
14 3
0 13 4
0
0
12 5
0 11 6
0
0
10 7
0 9 8
0
0
0 DIPSW_8
U2
0 34
D0 PA0
4
0
33 3
0 32
D1
D2
PA1
PA2
2
0
0
31 1
0 30
D3
D4
PA3
PA4
40
0
0
29 39
D5 PA5 0
28 38
D6 PA6 0
27 37
D7 PA7 0
5 18
0 36
RD
WR
PB0
PB1
19
9 20
0 8
A0
A1
PB2
PB3
21
35 22
RESET PB4
0 6
PB5
23
24
CS PB6
0 PB7
25
14
0 PC0
PC1
15
1
1
16
PC2 1
0
0
0
0
0
0
0
0
0
17
PC3 1
13
PC4 1
12
PC5 1
11
PC6 1
10
PC7 1
8255A
INTEL 8255 es una interfaz versátil que nos permite tener puertos de entrada y salida
simple, así como puertos de E/S sincronizados. Por lo tanto dicha interfaz está diseñada
para trabajar con casi cualquier microprocesador.
Para poder manejar Interfaz Periférica Programable del 8255 es importante dominar el
lenguaje ensamblador, para poder acoplar los diferentes tipos de microprocesadores
compatibles con el mismo.
La simulación planteada permitió conocer los modos de operación del PPI 8255,
también se utilizó un CI 74LS245 (Buffer de 8 líneas) para controlar la transmisión de
datos entre los buses.
6. Bibliografía
- Gianoti, J. (2018). “Interfaz paralela PPI”.
Disponible en: http://www.academia.edu/6604833/INTERFAZ_PARALELA_PPI
- Thomas L. Floyd, (2006). “Fundamentos de sistemas digitales”. España, Madrid:
Pearson.
- Canto, C. (nd). “El PPI Intel 8255” Microprocesadores. Disponible en:
http://galia.fc.uaslp.mx/~cantocar/microprocesadores/EL_Z80_PDF_S/16_PPI.PDF
- Ferreira, J. (nd). “Controlador de Interfaz Paralelo Programable (PPI) 8255”.
Disponible en:
http://webapp.pucmm.edu.do/WebSISE/Estudiante/materias/201120122/SD-ITT-327-
T-001/ITT-327-T%20Unidad%20VI-1.%208255.pdf