Você está na página 1de 6

INTERFACE PARALELA

rea: Eletrnica Nvel de conhecimento necessrio: bsico

Tpicos abordados: O que a interface paralela? Quantas entradas e sadas ela possui? Construindo a interface Manipulando no Pascal

Autor:

Guilherme Lopes Soledade


Tcnico em Eletrnica formado pelo Liceu de Artes e Ofcios Email: guilherme@robotic.com.br Portflio online: www.robotic.com.br/guilherme Criao: Dezembro/2002

O QUE A INTERFACE PARALELA?


Quando iniciamos o estudo da informtica aprendemos que o computador possui sadas e entradas. A Porta Paralela nada mais do que um dispositivo de entrada e sada paralelo. Oras, mas o que paralelo? H duas formas de se transmitir dados. Uma delas a forma serial. Serial, como o cognato indica, transmitir em srie, ou seja, um bit aps o outro. Transmitir de forma paralela transmitir vrios bits ao mesmo tempo. Em uma primeira impresso, a transmisso paralela pode parecer a mais apropriada. Porm, devemos lembrar do conceito de multiplexao. Tal conceito, que no momento no precisa ser estudado a fundo, se baseia no fato de comutar vrios bits de forma to rpida que eles so transmitidos por um nico fio, ou seja, de forma serial. Para quem tem raciocnio rpido, fica fcil compreender: pela forma serial a limitao de bits dada pela velocidade com que transmissor e receptor se chaveiam, enquanto que na paralela, a limitao fsica e dada pelo nmero de fios. Aplicaes da porta paralela A porta paralela, por no possuir uma alta velocidade de transmisso, tem, atualmente, sua aplicao limitada a impressoras e scanners. Atualmente, em caso de transmisses rpidas, se utiliza a interface USB (Universal Serial Bus), que atinge taxas de transmisso bem maiores. Na Eletrnica, a porta paralela pode servir para controlar qualquer tipo de processo. Pode, por exemplo, fazer a interface entre o PC e um sensor. O sensor, ao ser acionado, mandaria tal informao para a porta paralela e o PC procederia ao disparo de sirenes, conectadas as sadas da porta paralela. Devemos lembrar que a corrente de sada da porta paralela no alta, sendo suficiente para, no mximo, acender LEDs. Para circuitos que necessitem de maior potncia, devemos utilizar buffers ou amplificadores de correntes transistorizados. Endereo de memria A maioria dos PCs atuais possui uma porta paralela. Cada registrador desta porta paralela possui um endereo de memria. Por padro, temos que: Entrada: 379H Sada: 378H No caso de termos duas portas paralelas, teremos dois endereos de sada e dois endereos de entrada.

QUANTAS ENTRADAS E SADAS ELA POSSUI?


Observe o esquema:

ENTRADA = Bits: D7 D6 D5 D4 D3 D2 D1 D0 SADA = Bits: S7 S6 S5 S4 S3 Pois bem, tendo identificado os bits de sada/entrada, procederemos idealizao da Interface Didtica. A Interface Didtica possui 5 bits de entrada e 8 bits de sada. Os bits de entrada so controlados por meio de chaves seletoras que esto conectadas ao terra (nvel lgico 0) e ao VCC (nvel lgico 1). J os bits de sada tero como indicador um LED, que acender ao haver nvel lgico 1 e ficar apagado ao haver nvel lgico 0.

CONSTRUINDO A INTERFACE
Circuito de sada O circuito de sada composto por 8 leds, com corrente limitada por 8 resistores, que estaro dispostos da seguinte forma:

Um resistor na faixa de 180 a 560 o suficiente para verificar o acendimento do LED. So necessrios 8 resistores e 8 leds. O terminal mais comprido de cada LED dever estar conectado ao pino 18, estando o menor conectado a um resistor e o resistor conectado sada. Para saber quais so os pinos de sada, verifique o esquema na pgina anterior. Circuito de entrada O circuito de entrada composto de cinco chaves. O terminal comum da chave (normalmente, o do meio) deve ser conectado a uma das entradas (verificar esquema) e qualquer um dos outros dois deve ser conectado ao terra. Quando a entrada estiver conectada ao terra teremos nvel 0. Quando estiver em aberto, teremos nvel 1.

MANIPULANDO NO PASCAL
Relembrando o que foi aprendido no incio desta apostila: Endereo $378 $379 Funo Sada Entrada

Escrevendo para a sada No possvel simplesmente mudar o status de um dos bits de sada. necessrio enviar todo um byte (conjunto de 8 bits) para a sada. Suponhamos que, por exemplo, voc queira que o bit D4 assuma nvel 1, permanecendo os demais em nvel 0. Voc dever enviar o byte 00010000 (D7-D0), ou, em hexadecimal, $10. E se quisssemos que D2 e D5 fiquem em nvel alto? Devemos enviar 00100100, ou, em hexadecimal, $24. No Pascal: O Pascal possui uma array chamada port que lhe d acesso direto as portas do computador. Assim sendo, podemos, por exemplo, usar: Port[$378]:=$FF; O dado (byte) a ser enviado deve ser, necessariamente, informado em hexadecimal. Caso voc queira enviar direto uma varivel para a porta paralela, lembre-se que ela deve ser do tipo byte. No Delphi: O Delphi, infelizmente, no possui a array port. Porm, existem diversos componentes que fazem tal interface e ainda, possvel, faz-la por meio de instrues em ASM, supondo que a varivel b (de tipo byte) contenha o dado a ser enviado: asm mov dx,$378 mov al,b out dx,al end;

Lendo da porta paralela O procedimento de leitura inclui um passo a mais. O mascaramento. Pois bem, suponhamos que queremos criar um sistema que l a porta paralela e emite um beep caso o bit S3 esteja acionado. Simplesmente comparar se a entrada vale $08 no o suficiente pelo simples fato de que a entrada s assumir tal valor caso APENAS S3 esteja acionado. Como proceder, ento? Basta utilizarmos o mascaramento com a funo lgica AND (A AND B ser 1 caso A e B sejam 1). Observe: Bit de exemplo $08 Resultado: 01001010 00001000 00001000

Assim sendo, temos, em Pascal: B:=Port[$379]; If (B AND $04 = $04) then ... E, na varivel B (do tipo byte), teremos o valor lido. E em Delphi, utilizando ASM: asm mov dx, PortaLpt in al,dx mov dado,al

end; if (dado AND $04 = $04) then E teremos, na varivel dado (do tipo byte), o valor lido.

REPRODUO E DISTRIBUIO AUTORIZADAS DESDE QUE MANTIDOS OS DEVIDOS CRDITOS.

Você também pode gostar