Você está na página 1de 6

22/08/2010

Utilizando a porta paralela para controle de


dispositivos através do Windows

Romildo Martins da Silva Bezerra


Flávia Maristela S. Nascimento
Franklin Lima Santos
2

1. Introdução

A porta paralela é uma interface entre o computador e o mundo físico, trata-


trata-se de um periférico
que permite uma comunicação bidirecional full-duplex com o computador.

A princípio foi desenvolvida pela IBM (International Business Machine) para a comunicação com
impressoras, mas com a universalização do padrão USB, caiu em desuso.

a 01. Impressora utilizando a porta paralela


Figura

Para fins didáticos a porta paralela é bastante útil, pois possibilita o controle de dispositivos, troca
de dados e manipulação destes através de um PC (Personal
( Computer).

2. Pinagem e Endereçamento

A porta paralela
lela é representada pelo conector de 25 pinos, denominado DB-25
25 fêmea,
fêmea vide Figura
02.

Figura 02. Conector DB-25


DB (esquerda) e sua pinagem (direita).
3

Na Tabela 01 é possível verificar a pinagem do conector e suas respectivas funções.

Pino Sinal Direção Descrição


1 Strobe Saída de dados Sinal de Controle
2a9 Dados Saída de dados Dados
10 Acknlg Entrada de dados Sinal de Controle
11 Busy Entrada de dados Sinal de Controle
12 Paper End Entrada de dados Sinal de Controle
13 Not Connected1 - -
14 Auto Feed XT Saída de dados Sinal de Controle
15 a 17 Not Connected - -
18 a 25 GND - Sinal de Terra

Tabela 01 – Pinos e suas respectivas funções.

Como qualquer dispositivo periférico, a porta paralela é identificada pelo computador por um
endereço, trata-se de um endereço físico, que faz referência ao registrador o qual os dados serão
armazenados.

Nome da Porta Endereço de memória Endereço da Porta

LPT1 0000:0408 378 hexadecimal 888 decimal


LPT2 0000:040A 278 hexadecimal 632 decimal

Tabela 02 – Endereços da porta paralela.

3. Porta paralela e o Windows

Em algumas versões do Windows o acesso direto à porta paralela é bloqueado por questões de
segurança.

Para desbloquear é necessário um utilitário chamado UserPort, que pode ser encontrado em
http://www.moai.ifba.edu.br/robotica/arquivos/userport.zip

• Após o download do arquivo, extraia-o para um diretório conhecido;


• Copie o arquivo UserPort.sys para o diretório C:/Windows/system32/drivers (ou
C:/winnt/system32/drivers para o Windows NT);
• execute o programa UserPort.exe;
• remova os endereços existentes selecionando-os e clicando em “Remove”;
• adicione os endereços 0x378-0x37A, clicando em “ADD”;
• clique em "Start".

Obs.: Uma documentação complementar e técnica pode ser encontrada no diretório em que o
arquivo userport.zip foi extraído.

1
Not Connected: Não Conectado, não existe função associada a este pino.
4

4. Exemplo de Hardware – Controle de LED2

Um hardware bem simples pode ser montado com 8 resistores e 8 LEDs vermelhos, como mostra a
figura abaixo.

Figura 03 – Ligação da porta paralela com LEDs.

O cálculo das resistências R (R1 – R8) que limitam a corrente dos LEDs (D1 – D8) pode ser feito com
auxílio da Lei de Ohm:

ܸ
‫= ܫ‬
ܴ

onde:

I é a corrente elétrica, V é a tensão fornecida pela porta paralela (aprox. 5 Volts) e R é a


resistência que limita a corrente do LED.

Então,
5 − 1,8 ܸ
‫=ܫ‬ ≈ 457 Ω
0,007 ‫ܣ‬

O valor comercial mais próximo é de 470 Ω (amarelo – violeta – marrom – dourado)

2
LED ou Light Emitting Diode ou ainda Diodo Emissor de Luz é um semicondutor que quando
polarizado diretamente emite uma luz visível. Saiba mais em
<http://eletronicos.hsw.uol.com.br/led.htm>
5

5. Exemplo de Software em Linguagem C

dade de enviar bits para a porta paralela.


O software abaixo tem a finalida

Para saber qual valor enviar para a porta paralela, siga a tabela abaixo:

Bit Mais Bit Menos


Significativo Significativo

D9 D8 D7 D6 D5 D4 D3 D2
X X X X X X X X

Onde X pode assumir o valor 0 (nível baixo de tensão) ou 1 (nível alto de tensão),
tensão) dependendo do
BIT que se queira controlar.

Exemplo: Usando o exemplo do item 4, acenda os LEDs D8 e D2

Bit Mais Bit Menos


Significativo Significativo

D9 D8 D7 D6 D5 D4 D3 D2
0 1 0 0 0 0 0 1

Enviaremos então para o endereço 0x378 ou 0x278 (endereço da porta paralela) o valor 01000001
(em binário) ou 0x41 (em hexadecimal) ou 65 (em decimal) ou 0101 (em octal).

Obs.: Cuidado com a notação do número!


n Na linguagem C os números na base hexadecimal
começam com 0x, em octal iniciam com 0, em decimal não é preciso inserir nada.

ra compilar os programas recomendamos o compilador Dev C++ que pode ser encontrado em
Para
http://sourceforge.net/projects/dev
http://sourceforge.net/projects/dev-cpp/

6. Considerações importantes

A porta paralela também pode ser utilizada para comunicação serial, e justamente por isso,
existem no mercado cabos apropriados para este tipo de conexão. A diferença básica entre os
cabos é que eles podem não possuir todas as conexões entre os pinos, já que que a comunicação em
série só necessita de um par de fios para a transmissão e recepção do sinal e alguns outros fios para
o controle.
6

Outra consideração importante a respeito do uso da porta paralela é a sua capacidade limitada de
fornecer corrente elétrica. Não se pode ligar nada mais do que LEDs (ou dispositivos que consumam
uma baixa potência) diretamente.

Para ligar outros dispositivos, como motores, eletrodomésticos, etc. será necessário uma interface
apropriada e que será discutida posteriormente.

7. Referências

INTRODUÇÃO À PORTA PARALELA. Está contido em <http://www.rogercom.com/>. Acesso em


22/08/2010.

Acesso à Porta Paralela nos Windows XP/NT/2000. Está contido em


<http://www2.eletronica.org>. Acesso em 22/08/2010.