Pinagem de Interface Periférica Programável (PPI) Intel 8255, Modos e Aplicações

Here 24 2025
Fonte: DiGi-Electronics
Navegar: 1662

A Interface Periférica Programável (PPI) Intel 8255 foi um componente chave na ponte entre microprocessadores e dispositivos externos durante os primeiros dias dos sistemas digitais. Com portas de E/S versáteis, vários modos de operação e facilidade de programação, o 8255 permitiu uma comunicação confiável com monitores, sensores e controladores, tornando-o útil tanto na educação quanto na indústria.

Figure 1. 8255 Microprocessor

Visão geral da interface periférica programável (PPI) 8255

O chip Intel 8255 PPI é um chip de E/S amplamente utilizado projetado para conectar microprocessadores a dispositivos externos. Ele atua como uma ponte de comunicação para periféricos como ADCs, DACs, teclados e monitores. Suportando E/S direta e orientada por interrupção, ele oferece flexibilidade no projeto do sistema. Com três portas bidirecionais de 8 bits (A, B, C), ele oferece 24 linhas de E/S configuráveis. Sua relação custo-benefício e compatibilidade com processadores como o Intel 8085/8086 o tornaram um item básico nos primeiros sistemas de computador, kits de treinamento e controladores industriais.

Características do chip 8255 PPI

• Interface programável – Configurável por meio de instruções de software para se adaptar a dispositivos como displays, sensores e módulos de entrada.

• Três portas de 8 bits – As portas A, B e C fornecem 24 linhas que podem funcionar como entrada ou saída.

• Vários modos de operação –

Modo 0: Entrada/saída simples sem handshake.

Modo 1: E/S estroboscópica com sinais de handshake para comunicação sincronizada.

Modo 2: Transferência de dados bidirecional com handshake (somente na porta A).

• Conjunto/reinicialização de bits (BSR) – Os bits da porta C podem ser ajustados ou limpos individualmente para aplicações de controle/status.

• Agrupamento flexível – As portas podem ser divididas em grupos de 8 bits ou 4 bits.

• Compatibilidade TTL – Fácil integração com CIs digitais padrão.

• Registradores de controle independentes – Cada porta pode operar separadamente, em diferentes modos ou direções.

Pinagem do chip 8255 PPI

Figure 2. Pinout of 8255 Microprocessor

Pin No.GrupoSinalDescrição
1–8Porta APA0–PA7Porta de E/S de uso geral de 8 bits
9–16Porta CPC0–PC7Dividido em PC0–PC3 (inferior) e PC4–PC7 (superior); usado como linhas de E/S ou handshake
17–24Porta BPB0–PB7Porta de E/S de uso geral de 8 bits
25ControleCS'Seleção de chip (baixa ativa)
26PotênciaVccAlimentação de +5 V
27ControleRD'Habilitar leitura
28ControleWR'Habilitar gravação
29ControleREAJUSTERedefine todas as portas para o estado de entrada
30–37Barramento de dadosD0–D7Transfere dados/comandos entre CPU e 8255
38–39Pinos de endereçoA0, A1Selecione registros/portas internas: 00=Porta A, 01=Porta B, 10=Porta C, 11=Controle
40ChãoGNDReferência do solo

Arquitetura do chip 8255 PPI

Figure 3. Architecture of 8255 Microprocessor

Bloco FuncionalDescrição
Buffer de barramento de dadosAtua como uma interface entre o barramento de dados bidirecional da CPU (D7–D0) e o barramento de dados interno de 8 bits do 8255. Ele armazena e transfere dados temporariamente entre a CPU e os registros ou portas internas.
Lógica de controle de leitura/gravaçãoGerencia toda a comunicação entre a CPU e o 8255. Ele interpreta sinais de controle como RD, WR, A0, A1, CS e RESET para determinar o tipo de operação (leitura, gravação ou controle) e seleciona a porta ou registro de controle correto.
Lógica de Controle (Decodificador)Decodifica a palavra de controle enviada pela CPU para configurar as portas em vários modos (Modo 0, 1 ou 2) ou no modo Bit Set/Reset (BSR). Ele determina como cada porta funcionará - como entrada, saída ou handshake.
Controle do Grupo AControla a porta A (8 bits: PA7–PA0) e a porta superior C (4 bits: PC7–PC4). Ele suporta os modos 0, 1 e 2, permitindo E/S simples, E/S de handshake e transferência de dados bidirecional
Controle do Grupo BControla a porta B (8 bits: PB7–PB0) e a porta inferior C (4 bits: PC3–PC0). Ele suporta os modos 0 e 1, permitindo operações básicas de entrada/saída ou controladas por handshake.
Porta AUma porta de E/S de 8 bits que pode funcionar como entrada ou saída, dependendo da configuração do modo. Suporta os modos 0–2 sob o controle do Grupo A.
Porta BOutra porta de E/S de 8 bits para transferência de dados. Opera sob controle do Grupo B e suporta os modos 0 e 1.
Porta CUma porta dividida de 8 bits dividida em dois grupos de 4 bits: Superior (PC7–PC4) e Inferior (PC3–PC0). Eles podem atuar como portas de E/S independentes, linhas de controle ou sinais de handshake. Os bits individuais também podem ser controlados usando o modo Bit Set/Reset (BSR).
Barramento de dados interno (8 bits)Conecta todos os blocos internos do 8255, transferindo dados e informações de controle entre a CPU, a lógica de controle e as portas.
Fonte de alimentaçãoO chip opera com uma fonte de +5V DC e conexão GND para alimentar todo o circuito.

Modos de operação e princípio de funcionamento do chip 8255 PPI

O Intel 8255 serve como uma interface programável entre a CPU e os periféricos, traduzindo as operações de barramento em transferências de dados paralelas. Sua operação é regida por etapas de inicialização e modos selecionáveis:

Redefinir estado

Ao ligar ou redefinir, todas as portas (A, B e C) são padronizadas para o modo de entrada para evitar danos aos periféricos com saídas não intencionais.

Inicialização

A CPU deve enviar uma palavra de controle que configura cada porta como entrada/saída e seleciona um dos quatro modos de operação. Até que isso seja feito, as portas permanecem inativas.

Modos de operação

Modo de configuração/reinicialização de 5,3 bits (BSR)

• Aplica-se apenas à porta C.

• Permite que bits individuais sejam definidos ou limpos para tarefas de controle/status.

Modo 0 – E/S simples

- Entrada/saída básica sem aperto de mão.

• Usado para transferências simples, como LEDs, interruptores e displays.

Modo 1 - E/S estroboscópica

• Adiciona sinais de handshake (STB, ACK, IBF, OBF) via Porta C.

• Garante a transferência sincronizada de dados periféricos da CPU ↔.

Modo 2 – E/S bidirecional

• Disponível apenas na porta A.

• Suporta transferência bidirecional com controle de handshake, útil para dispositivos de alta velocidade ou assíncronos.

Operações de leitura/gravação

• Gravação: A CPU coloca dados no barramento do sistema e o 8255 decodifica as linhas de endereço (A0, A1) para direcioná-los para a trava de saída da porta correta.

• Leitura: Dispositivos externos colocam dados em linhas de porta, que o 8255 trava e disponibiliza para a CPU durante um comando de leitura.

Sincronização

• No Modo 0, as transferências de dados ocorrem diretamente sem handshakes.

• Nos modos 1 e 2, os sinais de handshake da porta C coordenam a prontidão e a aceitação, evitando a perda de dados durante transferências assíncronas ou de alta velocidade.

Considerações de interface do chip 8255 PPI

Ao projetar sistemas com o 8255, a interface cuidadosa garante confiabilidade e evita danos ao chip e aos dispositivos externos:

• Estado de entrada padrão – Na redefinição, todas as portas são padronizadas para entradas. Isso evita conflitos, mas também significa que as saídas ficam inativas até serem configuradas. A CPU deve sempre enviar uma palavra de controle para definir corretamente a direção e o modo antes de tentar a comunicação.

• Limites da unidade de saída – As portas do 8255 podem fornecer ou afundar apenas corrente limitada (alguns miliamperes). A condução direta de cargas pesadas, como lâmpadas, solenóides ou relés, não é segura. Em vez disso, ICs de buffer ou driver, como o ULN2803 (array Darlington) ou portas de coletor aberto como 7406, são comumente usados. Eles fornecem maior capacidade de corrente e protegem o PPI.

• Controle do motor – Para motores CC ou motores de passo, as portas 8255 não devem se conectar diretamente. Em vez disso, as saídas devem ser roteadas através de estágios de transistor ou circuitos de driver de ponte H. Esse arranjo permite o fluxo de corrente bidirecional enquanto isola o PPI dos picos de tensão indutivos.

• Comutação de carga CA – A interface com aparelhos CA requer isolamento para segurança. Relés mecânicos ou relés de estado sólido (SSRs) acionados por estágios de buffer garantem que o 8255 lide apenas com sinais de controle, enquanto a carga real de alta tensão é comutada externamente com segurança.

• Restrições da porta C – Os bits da porta C nem sempre podem ser usados livremente como E/S geral. Nos modos 1 e 2, vários pinos (por exemplo, STB, ACK, IBF, OBF) são automaticamente reservados para controle de handshake. Você deve levar em conta essas linhas reservadas para evitar conflitos ao misturar E/S geral com handshake.

Vantagens do chip 8255 PPI

• Compatibilidade com CPU – O 8255 funciona perfeitamente com processadores como Intel 8085, 8086 e seus compatíveis. Seu design corresponde aos protocolos de barramento padrão, tornando a integração simples sem lógica de cola extra.

• Configuração flexível de portas – Com três portas de 8 bits (A, B, C), os usuários podem configurá-las como entrada, saída ou mixagem, dependendo da aplicação. A capacidade de alternar entre E/S simples (Modo 0) e comunicação orientada por handshake (Modos 1 e 2) permite que o mesmo chip lide com uma ampla variedade de tarefas.

• Operação de alimentação única – Operando a partir de uma fonte padrão de +5 V, o 8255 é fácil de alimentar em sistemas baseados em TTL. Não são necessários reguladores especiais ou vários níveis de tensão, simplificando o design da placa.

• Transferência de dados paralela confiável – O chip fornece comunicação paralela de 8 bits estável e previsível, reduzindo as incertezas de tempo. Essa confiabilidade o torna adequado para dirigir displays, ler sensores e gerenciar sinais de controle em sistemas reais.

• Valor educacional – Por ser bem documentado e amplamente disponível, o 8255 tem sido uma ferramenta de ensino fundamental em laboratórios de microprocessadores e kits de treinamento. Você pode entender rapidamente os conceitos de interface de E/S por meio de experimentos práticos com este dispositivo.

Aplicações do chip 8255 PPI

• Sistemas Educacionais – Kits de treinamento e placas de laboratório frequentemente incluem o 8255 para demonstrar conceitos de interface periférica. Você pode praticar a programação de diferentes modos e observar a interação real com dispositivos externos.

• Controle de exibição – O chip aciona dispositivos de saída visual, como LEDs de sete segmentos, módulos LCD e painéis alfanuméricos. Com suas várias linhas de E/S, ele pode atualizar monitores ou enviar comandos de controle para ICs de driver.

• Interface de teclado – Os teclados Matrix nos primeiros terminais e computadores pessoais eram frequentemente digitalizados usando o 8255. Ao configurar algumas linhas como drivers de linha e outras como sensores de coluna, ele detectou com eficiência os pressionamentos de teclas.

• Controle do motor – Motores de passo e motores CC podem ser controlados quando o 8255 está emparelhado com estágios de transistor, matrizes Darlington ou pontes H. Isso o tornou útil em robótica, sistemas de posicionamento e projetos de automação.

• Aquisição de dados – Quando conectado a ADCs (conversores analógico-digital) e DACs (conversores digital-analógico), o 8255 forneceu uma interface completa para tarefas de medição e controle. Isso permitiu que os microprocessadores lidassem com sinais em equipamentos científicos e industriais.

• Automação Industrial – O 8255 encontrou uso no controle de sinais de trânsito, lógica de elevadores e painéis de monitoramento de processos. Sua capacidade de gerenciar de forma confiável várias entradas e saídas o tornou uma solução de baixo custo para sistemas de controle embarcados.

• Retro-Computação – Máquinas clássicas como os computadores IBM PC/XT e MSX empregavam o 8255 para interface periférica. Também foi usado em impressoras e cartões de expansão, consolidando seu lugar no início da história do computador pessoal.

Comparação do chip 8255 PPI com outros PPIs

8255 vs. 8155

Figure 4. 8255 vs. 8155

O Intel 8155 combina várias funções em um pacote: oferece um pequeno bloco de RAM estática, um temporizador programável e portas de E/S de uso geral. Isso o tornou adequado para sistemas compactos onde o controle de memória e tempo eram necessários. Em contraste, o 8255 se concentra inteiramente em E/S programável, sem memória ou temporização integrada. Seu design mais simples tornava mais barato e fácil programar quando o aplicativo não exigia RAM ou temporizadores integrados.

8255 vs. 8259

Figure 5. 8255 vs. 8259

O controlador de interrupção programável 8259 serve a um propósito muito diferente: gerenciar interrupções de hardware para ajudar a CPU a responder rapidamente a eventos externos. Enquanto o 8255 lida com a transferência de dados de E/S paralela, as coordenadas 8259 interrompem os sinais. Em muitos sistemas baseados em microprocessadores, os dois chips foram usados juntos, 8255 para interface com dispositivos como teclados e monitores e 8259 para gerenciar as solicitações de interrupção geradas por esses dispositivos.

8255 vs. expansores GPIO modernos

Figure 6. 8255 vs. Modern GPIO Expanders

Os sistemas atuais costumam usar expansores GPIO baseados em I²C ou SPI (como MCP23017 ou PCF8574). Esses dispositivos fornecem pinos de E/S adicionais com menos conexões, economizando espaço na placa e reduzindo a contagem de pinos na CPU. No entanto, eles operam em série, o que pode ser mais lento em comparação com o acesso paralelo direto do 8255. Embora o 8255 exija mais linhas de barramento, sua estrutura paralela permite transferências mais rápidas e o torna altamente valioso em ambientes educacionais, onde o controle direto de pinos individuais e a compreensão do tempo do barramento são importantes para o aprendizado.

Solução de problemas e problemas comuns

Trabalhar com o 8255 às vezes pode levar a falhas no sistema se as regras de projeto não forem seguidas cuidadosamente. Problemas e soluções comuns incluem:

• Portas não inicializadas – Após a reinicialização, todas as portas são padronizadas para o modo de entrada. Se a CPU não enviar uma palavra de controle adequada, as saídas permanecerão inativas ou se comportarão de forma imprevisível. Sempre programe o registro de controle antes de tentar ler ou gravar dados.

• Palavras de controle incorretas – Palavras de controle mal configuradas podem atribuir as direções ou modos errados às portas, bloqueando os sinais esperados. Verifique os valores das palavras de controle em relação às tabelas da folha de dados para garantir as configurações de bits adequadas.

• Falhas de handshake – Nos modos 1 e 2, a porta C fornece os sinais de handshake necessários (STB, ACK, IBF, OBF). Conexões ausentes, mal conectadas ou mal interpretadas levam a transferências paralisadas ou perdidas. Verifique cuidadosamente as expectativas de fiação e nível lógico dos dispositivos conectados.

• Saídas de sobrecarga – Cada pino de porta só pode lidar com pequenas correntes. A condução direta de LEDs é possível com resistores, mas motores, relés e lâmpadas requerem estágios de buffer externos, como matrizes de transistores ou CIs de driver. Ignorar esse limite corre o risco de danos permanentes ao chip.

• Conflitos de barramento – Se vários dispositivos tentarem acionar o barramento do sistema ao mesmo tempo, pode ocorrer corrupção de dados ou danos ao hardware. A arbitragem de barramento adequada e o uso de sinais de habilitação (RD', WR', CS') evitam esse problema.

• Ferramentas de depuração – Quando os problemas persistem, o equipamento de teste ajuda a isolar falhas. Os analisadores lógicos podem confirmar os sinais de temporização e controle, enquanto os osciloscópios podem verificar se o problema surge de fiação de hardware ruidosa ou inicialização incorreta do software.

Conclusão

O Intel 8255 PPI continua sendo a pedra angular da interface do microprocessador. Embora amplamente substituído por expansores GPIO modernos e E/S de microcontroladores integrados, ele continua a servir como uma ferramenta de ensino ativa. Sua clareza na demonstração de transferência paralela de dados, configuração de porta e handshake o torna inestimável para qualquer pessoa.

Perguntas Frequentes [FAQ]

Qual é a palavra de controle em 8255 e por que ela é importante?

A palavra de controle é uma instrução de 8 bits enviada pela CPU para configurar as portas e modos do 8255. Sem ele, todas as portas permanecem em seu estado de entrada padrão. Ele define se cada porta atua como entrada ou saída e seleciona entre os modos 0, 1, 2 ou conjunto/reinicialização de bits.

O 8255 pode acionar diretamente motores ou relés?

Não. As saídas 8255 só podem fornecer ou afundar alguns miliamperes, o que é insuficiente para motores ou relés. Circuitos de driver externos, como matrizes de transistores ou pontes H, devem ser usados para lidar com correntes mais altas com segurança.

Por que o 8255 ainda é usado na educação hoje?

O 8255 fornece uma maneira clara e prática de aprender sobre E/S de microprocessador, palavras de controle e transferência paralela de dados. Sua arquitetura simples ajuda os alunos a entender os conceitos básicos antes de passar para os microcontroladores modernos.

O que acontece se você usar a porta C nos modos de handshake?

Nos modos 1 e 2, algumas linhas da porta C são reservadas para sinais de handshake (como STB, ACK, IBF, OBF). Esses pinos não podem ser usados como E/S de uso geral durante esses modos, que você deve considerar para evitar conflitos.

Como o 8255 difere dos expansores GPIO modernos?

Ao contrário dos expansores I²C/SPI que usam comunicação serial, o 8255 funciona com um barramento paralelo, permitindo transferências mais rápidas, mas exigindo mais pinos. Isso torna o 8255 menos eficiente em termos de espaço, mas valioso para controle real e aprendizado do tempo do barramento.