Cap6
PORTAS PARALELOS
CAPíTULO VI
PORTAS PARALELAS
A família MCS-51 oferece 4 portas paralelas, denominadas P0, P1, P2 e P3 e para cada porta existe um SFR. De acordo com a configuração do hardware, uma ou mais portas estarão totalmente ou parcialmente disponíveis.
6.1. REGISTROS ENVOLVIDOS
Os 4 registros, P0, P1, P2 e P3 são na realidade os latches das portas e não os pinos da
CPU. Algumas instruções operam com o conteúdo destes latches e outras com os valores dos pinos.
As portas paralelas são utilizadas pela CPU para efetuar várias tarefas:
P0 → byte inferior de endereços e dados ==> BUS
P2 → byte superior de endereços
P3 →
0 → RXD
- entrada serial
1 → TXD
- saída serial
2 → *INT0
- interrupção externa 0
3 → *INT1
- interrupção externa 1
4 → T0
- entrada externa para o contador 0
5 → T1
- entrada externa para o contador 1
6 → *WR
- strobe para escrita na memória de dados externa
7 → *RD
- strobe para leitura da memória de dados externa
Durante uma operação de escrita ou leitura de memória de dados, por exemplo, os dados das portas P0 e P2 são removidos e por eles se emitem os endereços e dados. Terminadas as operações, o conteúdo do latch reaparece nos pinos da CPU.
Existem detalhes sobre a utilização de cada porta como entrada ou saída mas, de uma forma geral, pode-se dizer que:
Saída: Basta escrever 0 ou 1 na porta que o nível lógico aparece nos pinos corretos.
Entrada: todos as portas (exceto P0) possuem um pull-up interno; quando se escreve 1 em um bit da porta, diz-se que este bit está programado como entrada pois dispositivos externos podem colocar
(forçar) este 1 em 0. Assim, para ter uma porta como entrada, escreve-se 1 e depois com a leitura será lido 1 ou 0 de acordo com o nível que externamente está aplicado no pino. Devido a isto, as portas são chamadas quasi-bidirecionais.
MICROCONTROLADORES (MCS-51)
6 - 1
CAPÍTULO VI
PORTAS PARALELOS
6.2. DESCRIÇÃO DO FUNCIONAMENTO
Cada porta paralela é constituída por três partes: