Você está na página 1de 11

MINICURSO: INTERFACEAMENTO PELA PORTA PARALELA DE UM PC

Jos Alberto Naves Cocota Jnior cocota@linuxon.com.br Curso de Engenharia de Controle e Automao Escola de Minas Universidade Federal de Ouro Preto

Resumo
Este texto apresenta como realizar o envio e leitura de bits atravs de uma interface via porta paralela de um computador.

Palavras Chave
Porta Paralela, Interfaceamento.

Introduo
O objetivo deste texto servir de orientao para o minicurso de Interfaceamento Pela Porta Paralela de Um PC. Neste texto apresentado de forma gradual conceitos bsicos de como se realizar uma interface via porta paralela.

1. Portas de Comunicao de um PC
1.1 Porta Serial As portas seriais (padro RS232C), como o nome sugere, recebem e enviam sinais em sequ ncia. Sendo que o envio/recepo realizada por 1 bit de cada vez em uma velocidade programvel. Os bytes (8 bits) que devem ser enviados se alinham com a sada do dispositivo e por meio de u m dispositivo especial so enviados bit a bit em uma sequncia. Aps a decodificao deste byte, o byte seguinte se alinha e transmitido da mesma forma. Este envio de bits pode ser realizado tant o de modo sncrono, como assncrono. No modo sncrono, a leitura do byte realizada de acordo co m o intervalo do clock do dispositivo usado. J no modo assncrono, bits em uma sequncia espec fica declaram o comeo e o fim de um byte a ser lido.

Figura 01 Os bits so enviados em sequncia ou srie na porta serial

A conexo por porta serial recomendada apenas em casos de longa distncias PC interface e e m ambientes extremamente ruidosos. Vale lembrar, que esta forma de transmio de dados limita da em relao velocidade, alm de trazer algumas dificuldades de projeto, para quem deseja us la para o controle de dispositivos externos. 1 .2 Por ta Pa ral ela A porta paralela (padro DB25), como o nome diz, pode transmitir 8 bits (1 byte) simultaneamente, l evando cada bit por um condutor separado, conforme mostra a figura abaixo:

Figura 02 So usados 8 fios separados, um para cada bit a ser transmitido.

A vantagem principal deste tipo de transmio que podemos ter todos os bits de um byte ao mes mo tempo na sada do dispositivo (ou na entrada) o que significa uma velocidade maior de transmiss o de dados ou ainda o controle simultneo de 8 linhas ou dispositivos. Para comunicao com dispositivos muito distantes, o custo de cabo mltiplo passa a ser proibitivo. No entanto, para curtas distncias, para um controle de uma impressora, um rob, ou um outro disp ositivo eletrnico/eletromecnico, o cabo mltiplo j no representa problemas. O padro adotado pela IBM (conector Dshell) partiu de um fabricante de impressora, a Centronics (conector Anphend) que havia desenvolvido um conjunto de sinais de controle que funcionava muito bem na poca. Isso significa que o cabo atual de impressora um misto do conector DB25 (padro I BM) e o conector Centronics de 36 pinos. Alm dos dados que so transfiridos pelos condutores temos sinais especiais de controle e que ta mbm servem para informar ao computador o estado do dispositivo ligado a ele, se aquele est liga

do, se recebeu os dados transferidos, etc. Sabendo usar os sinais da porta paralela podemos controlar praticamente qualquer funo de um p rojeto de macatrnica ou ainda receber sinais de sensores ou de comandos externos. 1 .3 Por ta Se ria l X Po rta Pa ra lel a Estas duas arquiteturas de portas de comunicao apresentadas, possuem vantagens e desvantag ens, abaixo relacionadas em uma tabela: Porta Paralela * Mais rpida; * Interface de fcil construo. Vantagens * Mais fcil programao; Desvantagens * Via de dados (8 pinos) unidirecional PCinterface; * Entrada de sinais para interrupo (4 pinos); * Distncia mxima pequena entre PC interface (d < 15m); * Sensvel a rudos. Serial * Via de Dados (2 pinos) bidirecional PCinterface; * Distncia mxima grande entre PC interface; * Menos Sensvel a rudos. * Difcil programao; * Necessita de protocolo; * Interface de difcil construo; * Mais lenta (1 via).

Tabela 1 Vantagens e desvantagens porta serial e paralela.

Em nosso minicurso, optaremos pela utilizao da porta paralela, que permite a construo de no ssos objetivos por um caminho mais simples, rpido e eficiente.

2 . O s Si n a is d a Po rt a Para le l a
Os chips do computador operam com sinais extremamente fracos, devido a necessidade de se diss ipar um mnimo de potncia possvel. Para compatibilizar o circuito interno dos processadores com os circuitos externos so usados buff ers que servem como isoladores e amplificadores. Esses buffers so projetados para fornecer em sua sada uma corrente mxima de 2,6 mA e de dre nar uma corrente mxima de 24 mA. Como a tenso no nvel alto de 5 volts, podemos facilmente g arantir a segurana de operao com resistores limitadores de valor apropriado. Lembrese que no podemos carregar as sadas paralelas dos computadores com dispositivos q ue ultrapassem esses limites, sob pena de causar dano ao equipamento.

3 . Pi n ag e m da Port a Pa ral e l a
A porta paralela composta de 25 pinos, sendo que 8 pinos so para o envio de sinais (pinos 2 a 9)

, 5 para recepo de sinais (pinos: 10, 11, 12, 13, e 15), 4 para controle de status (pinos: 1, 14, 16, 1 7), e 8 para servir de terra (pinos 18 a 25). Abaixo seguese uma figura com a representao do con ector DB25, e uma tabela com a descrio da sua pinagem:

Figura 03 Representao do conector DB25. Sendo NU: No Utilizado.

Pino 1 2 3 4 5 6 7 8 9 10 11 12 13

Direo Sada Sada Sada Sada Sada Sada Sada Sada Sada Entrada Entrada Entrada Entrada

Nome Strobe D0 D1 D2 D3 D4 D5 D6 D7 Ack Busy Paper End Select

Comentrio Dados prontos para envio Dado menos significativo Dado Dado Dado Dado Dado Dado Dado mais significativo Perifrico avisa que dados foram recebidos e aguarda novos dados Perifrico ocupado, no pode receber novos dados Impressora sem papel Impressora selecionada

Pino 14 15 16 17 18 19 20 21 22 23 24 25

Direo Sada Entrada Sada Entrada Terra Terra Terra Terra Terra Terra Terra Terra

Nome Auto Feed Fault Init Select In Terra Terra Terra Terra Terra Terra Terra Terra Avano de linha

Comentrio Dispositivo incapaz de executar tarefa Sinal de reset Selecionar impressora Ligado ao terra das placas de interface Conectado ao terra Conectado ao terra Conectado ao terra Conectado ao terra Conectado ao terra Conectado ao terra Conectado ao terra

Tabela 2 Descrio das pinagens da porta paralela.

Na prtica deste minicurso, utilizaremos apenas 7 pinos, sendo eles: Pinos 2 (D0), 3 (D1), 4 (D2), 5 (D3) para o envio de sinais, que sero sinalizados por LEDs; Pinos 13 e 15 para a coleta de sinais, que sero chaveados; Pinos 18 para servir como terra.

Deste modo, podemos trabalhar com 16 possibilidades de envio de sinais, e 4 possibilidades de col eta.

4 . I n t e rf a c ea me nt o
A interface o circuito responsvel por conectar o computador ao ambiente externo. ela quem int erliga o computador a qualquer dispositivo (placa ou mquina), de tal forma que possamos utilizar o PC para controlar ou interpretar dados do meio exterior. Por exemplo, se quisermos acionar um motor eltrico pelo computador, necessitamos de uma lingu agem de programao, e de uma placa para realizar a interface. Todo comando dado pelo PC ser enviado a interface, que ir adequar esse sinal e acionar este motor do modo desejado.

Figura 04 Representao da interface.

H duas possibilidades de realizar o interfaceamento do microcomputador com o mundo exterior usando os sinais da porta paralela: Interfaceamento direto; Interfaceamento indireto.

4 .1 Int erf ac eam en to D ire to O interfaceamento direto a forma mais fcil de interfacear um circuito com um PC. Usase direta mente os sinais da porta paralela para excitar o que desejamos. Mas vale lembrar, que se corre o ris co de danificar o microcomputador utilizado se algo der errado, ao se usar este tipo de interfaceame nto. Na figura abaixo, temos o modo de se fazer a exitao de LEDs de forma direta.

Figura 05 Acionamento direto de LEDs no nvel alto (a) e no nvel baixo (b).

Podemos tambm acionar dispositivos externos atravs do interfaceamento direto fazendo o uso d e transistor(es). 4 .2 Int erf ac eam en to I ndi ret o Esta a forma mais segura de se realizar um interfaceamento. Basicamente h trs tipos de interfa ceamento indireto, atravs de rels, buffers, e acopladores piticos. C om rel s Rels so comumente utilizadas no controle de projetos de mecatrnica e robtica, sendo sua tcni ca uma das mais simples e seguras. O que se faz ligar em cada um dos pinos de sinal da porta paralela (D0 a D7) um circuito como o abaixo representado.

Figura 06 Acionamento de rels com transistores no nvel alto 1 (a) e no nvel baixo 0 (b).

A vantagem deste tipo de circuito est no fato de que o dispositivo acionado no precisa ser alimen

tado com a mesma tenso dos rels ou com os 5V do PC. Podemos controlar at mesmo dispositivo s ligados na rede de 110V ou 220V, sendo a sua corrente limitada apenas pela capacidade dos cont atos do rel. C om bu ffe rs Fazendo o uso de buffers (circuitos integrados), podemos fazer o interfaceamento de forma indire ta. Os tipos da famlia TTL LS, e HC CMOS so possveis de serem usados para esta tarefa. Abaixo segue uma figura de como usar um buffer para acender um LED.

Figura 07 Usando um buffer.

C om aco pla dor es pt ico s Os acopladores pticos so dispositivos formados por um LED e um sensor de luz (normalmente u m fototransistor). A maior vantagem deste tipo de dispositivo no controle que o comando passa do LED para o sen sor na forma de um feixe de luz. Portanto no h contato eltrico entre o circuito comando legado ao sensor. O isolamento tpico de um optoacoplador da ordem de 7000 volts.

Figura 08 Exemplo genrico de uso de um acoplador ptico.

5 . Ci rc ui t o do M i ni c urs o Pa ra I n t erf a ce Via Po rt a Pa ral e la


Na prtica deste minicurso, iremos trabalhar com um circuito que lhe dar a possibilidade de traba lhar com 4 sadas de sinais, e 2 entradas.

Os materiais necessrios so: 4 Resistores 1/8W CR25 18 ohms; 4 LEDs; 2 Chaves Liga/Desliga, ou 2 Chaves Tctis; 1 Circuito Integrado SN 74LS 07; 1 Conector DB25 Macho; Fios Para Ligao Tipo Telefnico ou Jumper.

Buscouse tornar o circuito o mais simples possvel, vizando assim facilitar a compreenso dos alu nos. Abaixo segue o circuito:

Figura 09 Diagrama do Circuito.

Observando o circuito, conclumos que quando os pinos 2 (D0) e 3 (D1) da porta paralela do PC es tiver no nvel lgico alto 1, os LEDs ligados aos pinos 2 e 4 do C.I. SN 74LS 07 estaro acesos. J no caso da coleta de dados, quando os pinos 4 (D2) e 5 (D3) estiverem no nvel lgico baixo 0, e a s chaves fechadas, o nvel lgico 1 chegar aos pinos 13 e 15 da porta paralela. No entanto, quan do as chaves estiverem abertas, os LEDs ligados aos pinos 6 e 8 do C.I. Iro acender, e o nvel lgic o que chegar aos pinos 13 e 15, o baixo 0. Dica Este circuito pode ser usado como exemplo, em uma maquete de iluminao pblica, bastando trocar as chaves liga/desliga por LDRs. Neste circuito usouse o C.I. 74LS07 como buffer para realizar o interfaceamento indireto dos sin ais, isolando assim o seu PC de fontes externas.

6 . So f t w are

Aps montado o circuito que realizar a interface pela porta paralela do PC, iremos apresentar um comando presente no Pascal que ser responsvel pelo envio e recepo de bits pela porta paralela. O comando o PORT, e para a utilizao do mesmo, voc precisar importar a biblioteca DOS, pr esente a partir do Turbo Pascal 6.0. Optamos por usar a linguagem de programao Pascal, acreditando esta ser uma L.P. (linguagem de programao) amplamente divulgada nas Instituies de Ensino Superior como introduo a prog ramao. Deste modo, apresentando a programao da interface pelo Pascal, estaremos atingindo um pblico mais amplo. No entanto, voc poder programar em qualquer outra L.P. que tiver maior f acilidade. Como visto no tpico referente a Pinagem da Porta Paralela, h trs endereos diferentes para o acionamento da mesma: 378H endereo relativo ao registrador de dados (DATA PORT), responsvel pelo envio de dado s, e composto pelos pinos 2 a 9; 379H endereo referente ao registrador de controle (CONTROL), responsvel pela leitura de da dos, sendo composto pelos pinos 10, 11, 12, 13, e 15; 37AH endereo referente ao controle de status (STATUS), composto pelos pinos 1, 14, 16, e 17.

6 .1 Env ia ndo Dad os Para o envio de dados, o comando PORT ter a seguinte sintaxe: PORT[$378] := X; onde X um valor decimal inteiro entre 0 e 255, e 378 corresponde ao endereo em hexadecimal da porta referente ao envio de dados (STATUS) pela porta paralela. Cada pino possui um valor decimal prprio que poder ser utilizado individualmente ou se somand o aos valores de outros pinos, conforme a tabela que se segue: Pino 2 D0 3 D1 4 D2 5 D3 6 D4 7 D5 8 D6 9 D7 Valor Decimal 1 2 4 8 16 32 64 128

Tabela 3 Valores decimais correspondentes a cada pino da porta paralela.

O valor 0 (zero) corresponde a todos os pinos com 0V. O valor 255 corresponde a todos os pinos com 5V.

Por exemplo, para acender o LED da prtica, relacionado ao pino 2 da porta paralela, basta entrar mos com o seguinte comando: PORT[$378] := 1; Para apaglo: PORT[$378] := 0; E para acenter os LEDs referentes a ligao com os pinos 2 e 3 da porta paralela ao mesmo tempo: PORT[$378] := 1 + 2; E xe rc cio Faa um programa que ative os pinos 2 e 3 da porta paralela da seguinte maneira: Pino 3 (D1) Estado 1 Estado 2 Estado 3 Estado 4 0 0 1 1
Tabela 4 Estados dos pinos.

Pino 2 (D0) 0 1 0 1

Sendo que a passagem de um estado a outro, s ser realizado assim que pressionada alguma te cla do teclado (use o comando READKEY). Fazendo este programa, voc aprender como enviar si nais pela porta paralela do PC. Voc poder constatar se tudo deu certo, observando os estados do s LEDs presente no circuito montado, durante a execuo do programa. 6 .2 Rec eb end o Da dos Para a recepo de dados, o comando PORT ter a seguinte sintaxe: ENTRADA := PORT[$379]; onde ENTRADA uma varivel do tipo inteiro, a qual receber um valor decimal inteiro referente ao estado dos sinais que esto sendo recebidos pelo endereo 379H (CONTROL). Por exemplo, podemos ter a seguinte sequncia de declaraes: ENTRADA := PORT[$379]; WRITELN(ENTRADA); onde estaramos realizando a leitura dos sinais que esto entrando pelo endereo 379H, se os pinos referentes a este endereo esto recebendo sinais no nvel lgico alto (1b) ou baixo (0b). E xe rc cio Faa um programa que leia os dados que esto sendo recebidos pelos pinos 13 e 15 da porta para lela presente na prtica, e que imprima os seus valores decimais correspondentes aos seus estados

no monitor do PC. Ao executar o programa, complete a tabela abaixo: Bit Lido Pino 15 0 0 1 1 Pino 13 0 1 0 1
Tabela 5

Valor Decimal

Bibliografia
Celso Eduardo Vieira Oliveira. Interfacemento Utilizando a Linguagem Pascal. Revista Mecatrnica Atual, pp 58, ano 1, n. 1, So Paulo, nov/2001. Newton C. Braga. Os Segredos da Porta Paralela. Revista Mecatrnica Atual, pp 32, ano 1, n. 1, So Paulo, nov/2001.

Você também pode gostar