![Page 1: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/1.jpg)
ELE 1078 - Microprocessadores I
AULA 13
Conjunto de Instruções do Microprocessador 8085A
- Entrada e Saída (I/O) -
![Page 2: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/2.jpg)
13.1 - Grupos de Instruções
As instruções no 8085 são distribuídas em 5 grupos:
Grupo de transferência da dados: Move dados entre registradores ou
posição de memória e registradores;
2. Grupo Aritmético: Adição, subtração, Incrementos, decremento;
3. Grupo Lógico: AND, OR, XOR, Comparação, Rotação, Complemento;
4. Grupo de Desvio: Condicionais, Incondicionais, Subrotinas;
5. Grupo de Controle, Pilha, Entrada e Saída.
![Page 3: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/3.jpg)
13.2 - Formas de entrada e saída de Dados
Há basicamente duas formas de comunicação entre o microprocessador e um
periférico.
Comunicação serial: É enviado um bit de cada vez. A taxa de transmissão é medida
em bits por segundos (bps).
Comunicação paralela: É enviado um grupo de bits simultaneamente. A taxa de
transmissão é medida em bytes por segundos.
![Page 4: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/4.jpg)
13.3 - Dispositivo programável 8155 (8255)
O 8155 é um dispositivo programável projetado especialmente para ser totalmente
compatível com o microprocessador 8085.
Os sinais ALE, IO/*M, *RD e *WR do 8085 podem ser conectados diretamente no
8155, eliminando a necessidade de demultiplexador externo no barramento
AD7-AD0.
O 8155 contém 256 bytes de memória R/W, três portos de I/O e um timer.
![Page 5: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/5.jpg)
13.4 - Dispositivo programável 8155 (8255)
O 8155 é um dispositivo com duas seções: A memória R/W de 256 bytes e o I/O
programável.
Essas duas seções podem ser vistas como dois chips independentes.
![Page 6: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/6.jpg)
13.5 - Dispositivo programável 8155 (8255)
A seção de I/O inclui dois portos paralelos de 8 bits (A e B) e um porto de 6 bits (C).
Todos os portos podem ser configurados como simples portos de I/O.
Os portos A e B podem ser programados no modo handshake, sendo que cada
porto utiliza três sinais com sinais de handshake do porto C.
![Page 7: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/7.jpg)
13.6 - Dispositivo programável 8155 (8255)
Lógica de Controle.
A lógica de controle do 8155 gera sinais de controle separado para a memória e I/O.
Dos 5 sinais de controle, exceto o chip select (*CE), são sinais de entrada gerados
diretamente pelo 8155.
![Page 8: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/8.jpg)
13.7 - Portos de I/O do 8155
A seção de I/O do 8155 inclui um registrador de controle, três portos de I/O e dois
registrador de timer.
São necessárias três linhas de endereçamento AD2-AD0 (A2-A0) e o Chip Enable
para especificar um dos seis registradores.
Dois sinais de controle (*RD e *WR) são necessários para Ler e Escrever nos
registradores.
![Page 9: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/9.jpg)
13.8 - Portos de I/O do 8155
Para se comunicar com periféricos através do 8155 os seguintes passos são
necessários:
• Determine o endereço (número do porto dos registradores e I/Os) baseado no
Chip Enable e linhas de endereços AD0, AD1 e AD2;
• Escreva a palavra de controle no registrador de controle para uma função de I/O
específica;
• Escreva a instrução de I/O para a porta endereçada para comunicar com o
periférico;
• Se necessário, Ler o registrador de Status para verificar o estado das portas de
I/O. Em aplicações simples esse passo não é necessário.
![Page 10: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/10.jpg)
13.9 - Endereçamento dos Portos
As linhas de endereço AD2-AD0 (A2-A0) selecionam um dos registradores.Os
endereços A3-A7 são don’t care states.
![Page 11: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/11.jpg)
13.10 - Endereçamento dos Portos
As linhas de endereço AD2-AD0 (A2-A0) selecionam um dos registradores.
Os endereços A3-A7 são don’t care states.
Como endereçar os portos?
![Page 12: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/12.jpg)
13.11 - Endereçamento dos Portos
Para selecionar o chip 8155 a saída O4 do decoder 3:8 deve ser nível baixo.
Dessa forma os níveis lógicos em A15 – A11 devem ser:
![Page 13: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/13.jpg)
13.12 - Endereçamento dos Portos
Pela combinação dos 5 bits (A15-A11) de endereços de maior ordem (mais
significativos) com os três bits (A2-A0) de endereços de menor ordem (menos
significativos) formam-se os endereços das portas na faixa de 20H a 25H.
![Page 14: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/14.jpg)
13.13 - Definição da Palavra de Controle
Os bits do registrador de controle são definidos como segue:
![Page 15: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/15.jpg)
13.14 - Definição da Palavra de Controle
Os bits do registrador de controle é definido como segue:
00 => entrada
11 => saída
01 => porto A é controlado via porto C
10 => portos A e B são controlados via porto C
![Page 16: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/16.jpg)
13.15 - Exemplo de Aplicação
Projeto de dois display de 7 segmentos utilizando os Portos A e B do 8155.
![Page 17: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/17.jpg)
13.16 - Exemplo de Aplicação
Os endereços dos portos são os seguintes:
![Page 18: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/18.jpg)
13.17 - Exemplo de Aplicação
Programa para apresentar 2 bytes nos portos A e B:
![Page 19: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/19.jpg)
Exercício 1
Desenvolver o programa de um contador binário de 16 bits, de forma que os
valores contados sejam apresentados nos portos A e B da 8155 e também no
DISPLAY (campo de endereços).
A contagem deve ser em “loop”, com os valores iniciais e finais dados como
segue:
Valor inicial: Endereço 2090h (LSB) e 2091h (MSB)
Valor final: Endereço 2092h (LSB) e 2093h (MSB)
O programa poderá ser interrompido de duas formas:
Primeira: Os bits PC0 e PC1 estão em nível 1: a contagem é reinicializada.
Segunda: A interrupção RST7.5 ativada: leitura de novos valores iniciais e
finais.
![Page 20: ELE 1078 - Microprocessadores I · ELE 1078 - Microprocessadores I AULA 13 Conjunto de Instruções do Microprocessador 8085A - Entrada e Saída (I/O) -](https://reader031.vdocuments.pub/reader031/viewer/2022021809/5c5be19c09d3f263368c7d44/html5/thumbnails/20.jpg)
Exercício 2
Comunicação entre dois microprocessadores