Vous êtes sur la page 1sur 5

MC-LAB - LABORATÓRIO 10 - INTERFACE DE PERIFÉRICO PROGRAMÁVEL 8255

1. Objetivos

Apreender a utilizar a interface paralela programável 8255.

2. Equipamento necessário

? Unidade microcomputador MC-1


? Fonte de alimentação de +5 volts MB-2F
? Unidade de serviço PU-116 (Chaves e Indicadores Luminosos)
? Unidade de interface de periférico programável MC-3/2 - PPI
? Conjunto de cabos de interconexão (DL-2)
? Osciloscópio
? Gerador de pulsos
3. Teoria

? LEIA ATENTAMENTE A TEORIA EXPOSTA NESTE ITEM E NOS CAPÍTULOS 14


(8155) E 15 (8255) DO GAONKAR.
? TRAGA O GAONKAR PARA O LABORATÓRIO.

O módulo MC-3/2 é a unidade de interface paralela programável do sistema MC-LAB. Esta unidade consis-
te de um dispositivo 8255 e vários circuitos integrados que viabilizam sua conexão com os barramentos do
MC-LAB. A Figura 1 mostra o diagrama esquemático da MC-3/2.
O circuito integrado 74LS245 é um buffer bidirecional para o barramento de dados. Os endereços são de-
codificados pelo 74LS138, que é um decodificador de 3 para 8 linhas. Um flip-flop (7474) controla um LED
indicador da seleção da unidade. Os endereços das quatro portas do temporizador programável estão mos-
tradas na Tabela 1.
Nome da porta Endereço
Porta A A0
Porta B A1
Porta C A2
Modo (controle) A3
Tabela 1 - Endereços das Portas do 8255

62
Figura 1 - MC-3/2 - Diagrama Esquemático
Explicar detalhadamente o funcionamento deste circuito (Fig. 1)

63
4. Experimentos

PARA EXECUTAR OS PROGRAMAS, COMPLETE E CONFIRA TODOS OS CÓDIGOS


HEXADECIMAIS DAS INSTRUÇÕES

4.1. Entrada/saída básica

Neste experimento trataremos do método de programação e das técnicas de interfaceamento entre micro-
computadores e periféricos.
O emprego da palavra de controle 82 (ver o formato de definição de modo e a tabela de definição de portas
para o Modo 0 do 8255 no capítulo 15 do Gaonkar) define as portas A e C (superior e inferior) como saídas
e a porta B como entrada.
Conecte 8 chaves à porta B da unidade MC-3/2, conecte indicadores luminosos (LEDs) às portas A e C da
mesma unidade e execute o programa da tabela abaixo
Observe como as alterações do estado da porta B são transferidas às portas A e C. Não existem LEDs
suficientes para a visualização simultânea de todas as linhas de PA e PC, portanto, primeiro visualize PA e
depois repita o programa para visualizar PC.
END. OPCODE OPERANDOS LABEL ASSEMBLY COMENTÁRIOS
LXI SP,20A0 define o stack pointer
MVI A,82 define a palavra de modo (controle)
OUT A3 envia a palavra de modo ao 8255
AGAIN: IN A1 lê PB
OUT A0 escreve em PA
OUT A2 escreve em PC
JMP AGAIN repete o laço
Tabela 2 - Modo 0: PA e PC portas de saída; PB porta de entrada

4.2. Interface de 12 linhas de entrada/saída

O modos das portas A e B podem ser definidos separadamente, entretanto a porta C se divide em duas
porções, cujos modos são definidos de acordo a definição dos dois primeiros (PA e PB).
Empregaremos neste experimento a palavra de controle 83 para o modo 0, que seleciona as portas A e C
(superior) como saídas e as portas B e C (inferior) como entradas.
Conecte 12 LEDs às linhas de saída e 12 chaves às linhas de entrada; execute o programa dado na tabela
abaixo e observe as mudanças que as entradas produzem nas saídas.
Lembre-se que a parte inferior da porta C consiste das quatro linhas de PC0 a PC3 e a parte superior da
porta C é formado pelas quatro linhas de PC4 a PC7.
END. OPCODE OPERANDOS LABEL ASSEMBLY COMENTÁRIOS
LXI SP,20A0 define o stack pointer
MVI A,83 define a palavra de modo (controle)
OUT A3 envia a palavra de modo ao 8255
AGAIN: IN A1 lê PB
OUT A0 escreve em PA
IN A2 lê PCL (inferior)
RLC rotaciona o valor lido de PCL de
RLC quatro posições para a esquerda
RLC
RLC
OUT A2 escreve em PCH (superior)
JMP AGAIN repete o laço

64
Tabela 3 - Interface de 12 linhas de entrada/saída

4.3. Comunicação entre portas de entrada/saída

As portas do MC-LAB podem se intercomunicar. A unidade do Microprocessador, MC-1, possui 22 linhas de


entrada/saída e a unidade MC-3/2 tem 24 linhas de entrada/saída.
Este experimento demonstra a comunicação entre uma porta da unidade MC-1 e uma porta da unidade
PPI.
Conecte as duas portas A entre si (a porta A do MC-1 com a porta A do MC-3/2) e execute o programa da
tabela abaixo, que transfere os dados do acumulador à porta A do MC-1, depois os lê através da porta A do
MC-3/2 e os devolve à porta B do MC-1.
END. OPCODE OPERANDOS LABEL ASSEMBLY COMENTÁRIOS
LXI SP,20A0 define o stack pointer
MVI A,03 define PA e PB do 8155 como saída
OUT 20 envia a palavra de modo ao 8155
MVI A,9B define PA do 8255 como entrada
OUT A3 envia a palavra de modo ao 8255
XRA A zera o acumulador
AGAIN: OUT 21 escreve em PA do 8155 (MC-1)
IN A0 lê PA do 8255 (MC-3/2)
OUT 22 escreve em PB do 8155 (MC-1)
INR A incrementa o conteúdo do acumulador
LXI D,FFFF Fixa o valor do atraso da contagem
PUSH PSW
CALL DELAY Inicia a espera
POP PSW
JMP AGAIN repete o laço
Tabela 4 - Comunicação entre portas de entrada/saída
Descreva o que o programa esta fazendo.

5. Tarefas (para fazer DURANTE o LAB)

5.1. Descreva os modos 0, 1 e 2 da PPI 8255.

5.2. Entrada/saída com disparo de sincronização

O Modo 1 fornece um meio de comunicação com periférico controlado por sinais que informam ou exami-
nam o estado da transferência de dados.
Conecte 8 chaves à porta A do 8255 (MC-3/2) e um push-button ao bit 4 (/STBA) da porta C do 8255 (MC-
3/2). Escreva um programa para o Modo 1 que transfira os dados da porta A do 8255 (MC-3/2) ao acumu-
lador, no instante que o push-button for pressionado.
O conteúdo do acumulador também deve ser mostrado na porta A do 8155 (MC-1).
Modifique o programa para que ele execute um laço contínuo. Conecte um gerador de pulsos (por exemplo,
a 1KHz) à entrada /STBA (bit 4 da porta C) em lugar do push-button.
Observe com um osciloscópio o sinal na saída IBFA (bit 5 de PC) e o sinal /STBA.

65
END. OPCODE OPERANDOS LABEL ASSEMBLY COMENTÁRIOS

Tabela 5 - Seus programas

66

Vous aimerez peut-être aussi