Universidade de Trás-os-Montes e Alto Douro

Documentos relacionados
Inicialmente a IBM (1981) disponibilizou uma porta paralela para ligação a impressoras (lentas)

Trabalho Prático Nº3 Porta Paralela

Professor Marcelo Josué Telles Porta LPT, programação, componentes eletrônicos, sistema binário...

Porta de Impressora IEEE Walter Fetter Lages.

DESCRIÇÃO DA PORTA PARALELA DA IMPRESSORA

Revisões. Porto paralelo. Porto paralelo. Porto paralelo. Porto paralelo. Porto paralelo GPIB JTAG

SMC-B-STD GUIA DE UTILIZAÇÃO GUIA DE UTILIZAÇÃO DO DRIVER PARA MOTOR DE PASSO BIPOLAR SMC-B-STD VER 1.00 PÁGINA 1

Utilizando a porta paralela para controle de dispositivos através do Windows

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 17

Capítulo 14. Expandindo as portas de comunicação 8031 com a PPI Interface PPI 8255

Porta Paralela. Fabricio Ferrari. Maio Universidade Federal do Pampa, Bagé, RS, Brazil

Entrada e Saída. Tópicos de E/S

Dicas de Porta Paralela

SMC-U PRO GUIA DE UTILIZAÇÃO GUIA DE UTILIZAÇÃO DA CONTROLADORA DE MOTOR DE PASSO UNIPOLAR SMC-U-PRO V1.00 PÁGINA 1

Entrada e Saída e Dispositivos

Nome Endereço IRQ COM1 3F8 4 COM2 2F8 3 COM3 3E8 4 COM4 2E UART - Universal Asynchronous Receiver/Transmitter. descrição

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca

INSTRUMENTAÇÃO E MEDIDAS

Notas da Aula 14 - Fundamentos de Sistemas Operacionais

Arquitectura de Computadores II. Periférico Genérico PG04

INSTRUMENTAÇÃO E MEDIDAS

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 7

Universidade Federal de Minas Gerais. Sistemas Operacionais. Aula 19. Sistema de Entrada/Saída

Capítulo 20. Tabelas e diagramas

Módulo 3 - Estrutura e configuração de Sistemas Operativos monoposto

Fundamentos de Sistemas Operacionais

Guia da Placa de desenvolvimento PD Mega16 N1

Entrematic DMCS IP1660PT Manual para o uso do sistema de monitorização e controlo da porta. EL16 EL20 EL16R EL21

Sistemas de Entrada e Saída

As normas EIDE / ATAPI e SCSI

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar

Capítulo 7 - Interfaces de Entrada e Saída. Conceito

Estrutura Básica de um Computador

Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador;

UM RECURSO DIDÁTICO PARA O ESTUDO DA COMUNICAÇÃO BIDIRECIONAL EM MODO NIBBLE DA SPP (STANDARD PARALELL PORT) UTILIZANDO C++

Organização de Computadores

Infra-Estrutura de Software

Controlador de Motor de Passo baseado num 8051

Organização Básica III

Sistema Distríbuído de Medição de Grandezas

SMC-U-XYZ GUIA DE UTILIZAÇÃO GUIA DE UTILIZAÇÃO DA CONTROLADORA DE MOTOR DE PASSO UNIPOLAR SMC-U-XYZ V 2.00 PÁGINA 1

Ditec DMCS Manual para o uso do sistema de monitorização e controlo da porta

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 10

MICROCOMPUTADORES. Professor Adão de Melo Neto

Gerência de Dispositivos. Adão de Melo Neto

O objetivo deste artigo é demonstrar como é possível construir uma rede alternativa para MSX, através dos conectores de joystick do micro.

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 19

Barramentos e interfaces de comunicação Arquitetura e Organização de Computadores Curso de Análise e Desenvolvimento de Sistemas

Gerência de Dispositivos. Adão de Melo Neto

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 8

Periféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 18

Sistemas Operacionais. Sistema de entrada e Saída

Programação em Linguagem C

PSI2662 Projeto em Sistemas Eletrônicos Embarcados: Sensores e Atuadores. Apresentação do Kit Freescale Freedom FDRM-KL25Z e Portas de Entrada e Saída

Organização e Arquitetura de Computadores I

SSC0112 Organização de Computadores Digitais I

Lista de Exercícios sobre Conceitos de Informática. Exercício 1: Correspondência

Sistemas Operacionais. Entrada/Saída

Curso introdutório de microcontroladores - Plataforma Arduino

LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO

Barramentos. Alguns sistemas reutilizam linhas de barramento para múltiplas funções; Dados Endereços Controle

Introdução ao Uso do LCD Inteligente (Versão Preliminar) Por Gilson Yukio Sato. Introdução

SMC-U-XYZ GUIA DE UTILIZAÇÃO GUIA DE UTILIZAÇÃO DO DRIVER PARA MOTOR DE PASSO UNIPOLAR SMC-U-XYZ VER 3.00 PÁGINA 1

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

Programação. Module Introduction. Cap. 1 Fundamentos de Computadores

Hardware. 5- Faça o fluxograma para efectuar o debounced de uma tecla por temporização(20ms). Implemente uma rotina para a leitura da tecla.

Entrada e saída do ARC Prof. Luís Caldas Aula 08 pág.125 a 126

Linguagem C Princípios Básicos (parte 1)

Aula 03 - Concorrência. por Sediane Carmem Lunardi Hernandes

Introdução à Programação em C Input / Output

Entrada/Saída. Capítulo 5. Sistemas Operacionais João Bosco Junior -

Manual de Utilizador Placa DETIUA-S3

ENTRADA E SAÍDA (I/O)

Entrada e saída Introdução hardware de E/S

Data Sheet FBEE Kit V05

INTRODUÇÃO AO ARDUINO DUE, CANAL DIGITAL, FUNÇÃO DELAY

Aula 4. Engenharia de Sistemas Embarcados. Prof. Abel Guilhermino Tópico: Arquitetura de um microcontrolador 8051

COMUNICAÇÃO SERIAL. Prof. Clayrton Henrique Microprocessadores Aula 30 Rev.02

Barramento. Entrada. Saída

Introdução Estrutura Conectores Jumpers Outros componentes ROM BIOS CHIPSET. Cap. 2 - Placas mãe

Comunicação Serial X Paralela. Alunos: Hugo Sampaio Dhiego Fernandez Renato Rios Bruno Victor

Prof. Adilson Gonzaga

Programação em Linguagem C

Application Note FBEE Controle de Placas com entradas Analógicas REV01. 1 Rev01

Microcontroladores PROF. ME. HÉLIO ESPERIDIÃO

Escola Secundária de Emídio Navarro

- Tarefas Práticas de Programação usando Arduino - Imagem do Robô com Legendas

2ª Lista de Exercícios de Arquitetura de Computadores

MANUAL DE INSTALAÇÃO E PROGRAMAÇÃO CONVERSOR - IP / USB / SERIAL RV1

Universidade do Minho Departamento de Informática

CURSO TÉCNICO DE INFORMÁTICA. Fundamentos de Hardware e Software

Barramento ISA. Placas ISA de 8 bits: usam apenas 62 pinos

Escola Secundária de Emídio Navarro

Escola Secundária de Emídio Navarro

Suporte de funcionamento e interacção com o teclado

Caderno de Atividades 1

18/10/2010. Unidade de Controle Controle. UC Microprogramada

MICROPROCESSADORES, CLPS E ARQUITETURAS COMPUTACIONAIS

Transcrição:

Universidade de Trás-os-Montes e Alto Douro INSTRUMENTAÇÃO E MEDIDAS Engenharia Electrotécnica INTRODUÇÃO À PORTA PARALELA Ano Lectivo 2002/2003

ÍNDICE PORTA PARALELA...1 INTRODUÇÃO...1 CONSTITUIÇÃO DA PORTA PARALELA...2 ENDEREÇOS...3 O CONECTOR DB25...6 ENTRADAS...7 SAÍDAS...7 PINOS BIDIRECIONAIS - 8 Entradas/8 Saídas...8 PEQUENO EXEMPLO...10

PORTA PARALELA INTRODUÇÃO A porta paralela é uma interface de comunicação entre o computador e um periférico. Quando a IBM, em 1981, lançou no mercado o PC, a porta paralela foi incluída no computador como alternativa às portas séries utilizadas como interface para impressoras. Dada a sua configuração paralela ( de 8 bits de dados) a transferência de dados é, pelo menos, 8 vezes mais rápida que a série. Apesar de, inicialmente, a porta paralela ser usada exclusivamente pela impressora, com o decorrer dos tempos, esta, tem sido usada para outros fins, como por exemplo: acesso a drivers (disco rígido, flexível, removível, CDROM s), interface de rede local e para interface com equipamentos de controlo. A sua vasta utilização deve-se ao facto desta ser a interface mais simples do PC, uma vez que não necessita de recursos adicionais para a inter-conexão, ao que se junta níveis apreciáveis de desempenho. Se o utilizador do PC conhecer um pouco de electrónica e dominar uma linguagem de programação como: C/C++/C++Builder, Pascal/Delph ou mesmo o Visual Basic, poderá desenvolver um programa que controle um aparelho ligado à porta paralela, ou um programa de transferência de arquivos entre dois computadores, utilizando um cabo paralelo como meio de transmissão. Os conhecimentos de electrónica servirão como base ao desenvolvimento de uma placa electrónica personalizada, que será conectada ao DB25 da porta paralela. Com este trabalho pretende-se dotar o aluno de alguns conhecimentos sobre a porta paralela, de modo a que este possa compreender convenientemente o seu funcionamento e utilizá-la, de uma forma não convencional, isto é, não somente para ligação à impressora, mas também a qualquer outro aparelho (do qual o utilizador tenha conhecimento sobre seu funcionamento) que deseje controlar através do seu próprio PC, como sugere a IBM nos seus documentos. ATENÇÃO: A Porta Paralela está ligada directamente à placa mãe do computador não existindo qualquer circuito de protecção. Muito cuidado aquando da conexão de circuitos electrónicos a essa porta, pois, uma descarga eléctrica ou um componente com a polaridade invertida, poderá causar danos irreparáveis no computador. Página 1 de 13

CONSTITUIÇÃO DA PORTA PARALELA A interface paralela é composta por um conector com 17 linhas de sinal e 8 linhas de terra. Os sinais podem ser divididos em 3 grupos: Linhas de Controlo - 4 vias Linhas de Estado - 5 vias Linhas de Dados - 8 vias As linhas de Controlo são utilizadas para o controlo da impressora (ou de um outro circuito associado). As linhas de Estado permitem ao PC verificar do estado da interface e da impressora. Inicialmente, as linhas de Dados foram concebidas de forma unidireccional do PC para a impressora. A Tabela abaixo fornece a definição e a descrição de cada um dos sinais no padrão SPP (Standard Parallel Port). Grupo Sinal SSP E/S Descrição Controlo STROBE S Activo baixo. Indica que os dados das vias estão válidos. AUTOFEED S Activo baixo. Instrui a impressora para inserir avanço de linha a cada carrige return. SELECTIN S Activo em baixo. Usado para indicar selecção da impressora. INIT S Activo alto. Usado para inicializar a impressora. Estado ACK E Sinal (baixo) indicativo de correcta recepção do caractere pela impressora. BUSY E Sinal (alto) enviado pela impressora quando esta estiver ocupada. PE E Sem papel. SELECT E Sinal (alto) indicativo de que a impressora está pronta. ERROR E Sinal (baixo) indicativo de existência de alguma condição de erro. Dados DATA[8:1] S 8 linhas de dados: unidireccionais para versões mais antigas de SSP ou bidireccionais em versões mais actuais. Tabela 1 Página 2 de 13

ENDEREÇOS Os sinais no SPP são determinados através de bits específicos existentes em registradores da interface paralela. Os registradores são mapeados em blocos contíguos de 3 registros a partir do endereço base da porta paralela. Estas portas são normalmente referenciadas como LPT e possuem endereço base de E/S 3BCh, 378h e 278h. Novos padrões para a porta paralela referenciada no IEEE 1284 (norma para interfaces paralelas originária do comité IEEE 1284 de 1994) fazem uso de 8 a 16 registradores localizados a partir de 378h ou 278h, ou ainda podem ser recolocáveis nos casos de portas paralelas Plug and Play. O computador geralmente possui 3 portas: LPT1, LPT2 e LPT3 (alguns possuem LPT4). Cada porta dessas possui 3 endereços: data, status e control. Esses endereços estão numa ordem sequencial. Isso quer dizer que se a porta data tem o endereço 0x038, então o endereço correspondente de status é 0x0379 e o control é 0x037a. A tabela abaixo mostra os registradores para o SPP. Offset Nome Escrita/ Descrição Leitura 0 Reg. Dado E/L Porta para escrita e leitura dos dados 1 Reg. Estado L Contém os bits de estado 2 Reg. Controlo E Usado para estabelecer os sinais de controle 3-7 Vários NC Usado em diferentes implementações Tabela 2 Hoje em dia, os computadores estão, basicamente, configurados da seguinte maneira: Printer Data Port Status Control LPT1 0x0378 0x0379 0x037a LPT2 0x0278 0x0279 0x027a LPT3 0x03bc 0x03bd 0x03be Quadro 1 No entanto, em alguns computadores (principalmente os da IBM), esses valores podem mudar. Para saber, com certeza, quais os endereços para os quais a sua máquina está configurada, pode usar-se o programa debug do DOS para visualizar os locais da memória 0040:0008. Por exemplo: >debug <ENTER> -d 0040:0008 L8 <ENTER> 0040:0008 78 03 78 02 00 00 00 00 Página 3 de 13

OBS: Observe que o byte mais significativo vem depois do byte menos significativo, isso quer dizer que quando vemos 78 03, quer dizer na verdade: 03 78. No exemplo podemos ver que LPT1 é 0x00378, LPT2 é 0x0278 e LPT3 e LPT4 não possuem endereços definidos. Então, para essa máquina hipotética: Printer Data Port Status Control LPT1 0x0378 0x0379 0x037a LPT2 0x0278 0x0279 0x027a LPT3 NENHUM LPT4 NENHUM Quadro 2 Um outro modo é executar o Microsoft Diagnostic (msd.exe ou winmsd.exe) e verificar as configurações da LPT. Uma terceira alternativa é utilizar o setup da BIOS para verificar e/ou configurar os endereços. Finalmente, quem desejar poderá efectuar esta consulta de endereços por software como é mostrado no programa em C exemplificado abaixo: #include <stdio.h> #include <dos.h> void main(void) { unsigned int far *ptraddr; /*Ponteiro para a localização do porto da impressora*/ unsigned int address; /*Endereço da porta*/ for (a=0;a<3;a++) { address=*ptraddr; if(address==0) printf( Não foi encontrado o porto para LPT%d \n,a+1); else printf( Endereço da LPT%d é %Xh\n,a+1,address); *ptraddr++ } } A tabela 3 mostra os três registos e a correspondência aos pinos do conector da figura 2. Página 4 de 13

BASE+0 : Porto de DADOS Bit7 db7 D7 Bit6 db6 D6 Bit5 db5 D5 Bit4 db4 D4 Bit3 db3 D3 Bit2 db3 D2 Bit1 db1 D1 Bit0 db0 D0 Leitura/escrita BASE+1 : Porta de ESTADO Bit7 Busy S7 Bit6 Ack S6 Bit5 Paper Out S5 Bit4 Select In S4 Bit3 Error S3 Bit2 IRQ (Not) Bit1 Reservado Bit0 Reservado Tabela 3: Registo I/O da porta paralela. Leitura (unicamente) BASE+2: Porta de CONTROLO Bit7 Não usado Bit6 Não usado Bit5 Habilita a porta em modo bidireccional Bit4 Habilita IRQ através da linha Ack Bit3 Select Printer C3 Bit2 Initialize printer C2 Bit1 Auto linefeed C1 Bit0 Strobe C0 Escrita (unicamente) Pela manipulação destes registos é possível estabelecer protocolos de comunicação com periféricos, através das linhas associadas. Um conjunto de informações adicionais poderá encontrar-se em [ i ][ ii ][ iii ][ iv ]. Os modos de transferência de dados na porta paralela são definidos pelos modos referenciados no IEEE 1284 e são limitados pela versão do hardware implementado. Interfaces paralelas de versões mais antigas são denominadas SSP e permitem modos de transferência do tipo compatibilidade, byte e nibble. Inicialmente implementadas para serem unidireccionais, estas interfaces podem ser configuradas para efectuar transferências bidireccionais dependendo do protocolo utilizado. Implementações mais actuais de porta paralela permitem protocolos bidireccionais, tais como o EPP(Enhanced Parallel Port) e o ECP(Extended Capability Port) possam ser utilizados. Neste texto far-se-á referência aos modos de transferência SSP, mais especificamente ao modo popularmente denominado Centronics. O modo Centronics é essencialmente unidirecional com verificação dos sinais de estado e erro da interface que podem ser considerados bi-direcionais. Neste modo, os dados são escritos nos registradores da interface, os sinais de estado verificados e finalmente o sinal de Strobe é gerado sinalizando a validade dos dados para a impressora. O ciclo de transferência é mostrado na seguinte figura: Figura 1 Ciclo de transferência Página 5 de 13

O CONECTOR DB25 O DB25 é um conector geralmente situado na parte de trás da caixa do computador. É através deste que o cabo paralelo se conecta ao computador para poder enviar e receber dados. A porta paralela dos PC s IBM originais possui (ver figuras 2, 3 e 4) : 8 pinos de saída acessíveis via porto de dados - DATA Port 5 pinos de entrada (dos quais um invertido) acedidos via porto de estado - STATUS Port 4 pinos de saída (dos quais três invertidos) acedidos via porto de controlo - CONTROL Port os restantes 8 pinos funcionam como massa - GND Figura 2 - Conector DB25 Figura 3 -Significado de cada pino do DB25 Figura 4 - Esboço de funcionamento do DB25 Página 6 de 13

ENTRADAS A porta status possui 5 sinais: BSY, /ACK, PE (paper empty), SELECT, /ERROR. Estas entradas são lidas através dos 5 bits mais significativos da porta de status. Note-se que os projectistas dos circuitos de interface da impressora inverteram vários bit s, como por exemplo o associado ao BSY usando hardware. Isto é, quando um zero (nível baixo de tensão TTL) está presente na entrada BSY, o bit correspondente no registo de STATUS será lido como sendo '1'. Nesta perspectiva a linha BSY deve ser entendida na lógica invertida. Para repor o valor de BSY na lógica positiva basta ler o bit e invertê-lo via software. O seguinte trecho demonstra a leitura dos 5 bits mais significativos. #define DADOS 0x0378 #define STATUS DADOS+1 unsigned int in_val; in_val = ((inportb(status)^0x80) >> 3); /* lê a porta status e faz XOR com 1000 0000 */ Observe que a porta status é lida e o bit mais significativo, correspondente a BSY, é invertido utilizando a função ou-exclusivo (XOR). O resultado então é deslocado para que os 5 bits superiores fiquem nos 5 bits inferiores da variável in_val. A entrada IRQ na porta status não está disponível nos terminais do conector DB25. SAÍDAS Todas as saídas da porta paralela são de lógica positiva. Isto é, escrevendo o lógico "1" num bit da porta o pino correspondente terá saída +5v. No entanto, os pinos SELECT_IN, AUTOFEED e STROBE possuem uma lógica invertida. Isto é, colocando o nível lógico 1 nesses pinos a saída será de 0v. Isto acontece porque quando não há nenhuma ligação com a porta o computador "vê" esses pinos como nível lógico 1, daqui advém uma grande confusão já que este pensaria que estava uma impressora ligada. Para acabar com esses problemas esses pinos foram invertidos. Particularizando para um exemplo prático, imagine-se que há a necessidade de enviar um valor val1 para a porta dados e um valor val2 para a porta controlo, neste caso vem: #define DADOS 0x0378 #define ESTADO DADOS+1 #define CONTROLO DADOS+2 int val1, val2; val1 = 0x81; /* 1000 0001 */ outportb(dados, val1); /* Envia val1 para porta dados */ val2 = 0x08; /* 0000 1000 */ outportb(control, VAL2^0x0b); /* Envia val2 para porta controlo */ /* 0x0b= 0000 1011 SELECT_IN = 1, INIT = 0, /AUTO_FEED = 0, /STROBE = 0 */ Página 7 de 13

Porta paralela Observe-se que apenas os 4 bits menos significativos de val2 são utilizados. Na última linha de código, /SELECT_IN, /AUTO_FEED e /STROBE são enviados de forma invertida usando a função OU-EXCLUSIVO (XOR) para compensar a inversão de hardware. Por exemplo: se alguém quiser enviar 1 0 0 0 no nibble baixo e não fizer a inversão, o hardware irá inverter o bit 3, não inverterá o bit 2 e inverterá os bits 1 e 0. O resultado na saída será então 0 0 1 1 que está longe do desejado. Usando uma função ouexclusivo, 1 0 0 0 é enviado para a porta controlo como 0 0 1 1. O hardware, então, inverte os bits 3, 1 e 0 e na saída ter-se-á 1 0 0 0. Até aqui, foram estudadas 12 saídas; oito da porta de dados e quatro da porta de controlo. Para além destas linhas existem ainda mais 5 entradas na porta status. Três bits da porta controlo e o bit mais significativo da porta status são invertidas pelo hardware, mas isto é facilmente manipulado pela função XOR para seleccionar os bits invertidos. PINOS BIDIRECIONAIS - 8 Entradas/8 Saídas No endereço base (porta dados), oito bits estão disponíveis para saída nos pinos 2 a 9. No endereço base+1 (porta status), temos 5 entradas nos bits D3 a D7. O bit D6 (pino 10) pode ser usado para gerar uma interrupção de hardware. No endereço base+2 (porta controlo) existem diversas possibilidades podendo ter-se 4 bits de saída ou 4 bits de entrada ou podem ser configurados da maneira que se deseja. Isto é possível porque as saídas estão em colector aberto. Enviando dados para esta porta faz com que os pinos de saída vá para o nível alto, e assim este pino pode ser utilizado como uma entrada. O colector aberto é polarizado através de um resistência de 4,7KΩ. Resumindo: a porta paralela é capaz de fornecer de oito até 12 saídas e de cinco a até nove pinos de entrada. Um destes pinos pode também ser usado como interrupção de hardware, colocando D4 (porta controle) em 1 e aplicando um pulso no pino 10. O IRQ padrão da LPT é 7. O circuito abaixo é exemplo de um circuito de 8 entradas/8 saídas. Página 8 de 13

Figura 5 Circuito de teste para entrada/saída de um byte Página 9 de 13

PEQUENO EXEMPLO Observe a figura abaixo mostrando um push-buttom, normalmente aberto, que é lida na entrada BSY (porta status, bit 7) e o led que é accionado pelo bit 0 na porta dados. Figura 6 Interruptor Digital Simples Um programa em linguagem C faz com o led pisque sempre que o interruptor seja pressionado, aterrando o pino BUSY. Note-se que o led acenderá com nível 0 na saída. /* AccionamentoLED.C */ #include <stdio.h> #include <dos.h> /* função delay */ #define DADOS 0x0378 #define STATUS DADOS+1 #define CONTROLE DADOS+2 void main(void) { int in; while(1) { in = inportb(status); if (((in^0x80)&0x80)==0) /* se o bit BUSY estiver em 0 (chave fechada)*/ { outportb(dados,0x00); /* liga o LED */ delay(100); outportb(dados, 0x01); /* apaga o LED */ delay(100); } else { outportb(dados,0x01); /* se a chave está aberta, apaga o LED */ } } } Página 10 de 13

O circuito acima ilustrado, programado com o código C correspondente efectua as seguintes sequências: Nível 1 na saída D0 (porta dados - Bit 0) apaga o LED. Nível 0 acende o LED. Quando a chave está aberta, tem-se 5V (nível 1) na entrada BUSY - via resistência BUSY (porta status - Bit 7). Quando pressionado, o push-buttom aterra (nível 0) a resistência e o pino BUSY. Observe-se a utilização de uma fonte externa para o accionamento do LED. Não esquecer, por isso, que a massa do circuito tem que ser única pelo que há necessidade de ligar o GND da fonte com o Ground (18) da porta. Para além disso não esquecer que o polaridade do led terá que ser respeitada para que o circuito funcione, bem como, para evitar o risco de destruição da porta. REFERÊNCIAS [ i ] Zhahai Stewart's IBM Parallel Port FAQ/Tutorial version 0.96, http://rainbow.rmi.net/~hisys/parport.html [ ii ] Craig Peacock's Interfacing the PC covers both Parallel and Serial Ports, http://www.beyondlogic.org/ [ iii ] Peter H. Anderson's Use of a PC Printer Port for Control and Data Acquisition, http://et.nmsu.edu/~etti/fall96/computer/printer/printer.html [ iv ]Warp Nine Engineering s Introduction to the IEEE 1284 Parallel Port Standard, http://www.fapo.com/1284int.htm Página 11 de 13