Está en la página 1de 6

A Porta Paralela

1. Introduo :
Bem vindo ao primeiro ttulo da srie O Guia das Cincias Ocultas, onde abordaremos questes que
as pessoas no teriam coragem nem de perguntar s suas mes.
A Porta Paralela..... afinal.... serve para qu ? Seria uma porta de canalizao de energia para o seu
computador...?
Na verdade a porta paralela uma porta bi-direcional de dados, onde os dados so enviados atravs
de um determinado nmero de pinos e so recebidos por um outro nmero de pinos.
Lembra nas aulas de informtica, aquela estria chatssima e depressiva de perifricos de entrada e
sada e bl bl bl.......
Pois , a porta paralela a interface de comunicao entre perifricos de sada de um determinado
tipo e um computador.
Mas porque a maioria dominante de perifricos que utilizam a porta paralela so as impressoras ?
Sinceramente eu no tenho uma resposta exata para isso, mas acredito que como nosPCs antigos a
taxa de transferncia de dados das portas seriais eram horrveis, era mais prtico (e mais rpido)
utilizar a impressora com as portas paralelas, desse modo a impresso seria mais rpida, mais
estvel e facilitaria a criao dos sistemas de troca de dados entre elas e os computadores, alm de
simplificar a eletrnica contida nas mesmas. Bom, isso a minha opinio pessoal.

2. Usando a Porta Paralela


Se voc esta lendo esse texto, porque provavelmente planeja controlar algum dispositivo eletrnico
atravs da porta paralela. Portanto esse tutorial dar nfase a uma abordagem em nvel de hardware
sobre a mesma.
Suponho que voc j tenha um conhecimento bsico sobre eletrnica, ento no vou me prender a
explicaes sobre componentes eletrnicos e seu funcionamento.
ATENO !!!!!! Ns no nos responsabilizamos por qualquer dano que seja causado em seu
equipamento, seja por uso imprprio, uso correto ou interveno csmica !!!! Se todas as
recomendaes de utilizao forem corretamente seguidas, a possibilidade de pane ou defeito em
seu sistema/hardware praticamente nula. Seja cuidadoso e no tenha pressa !!!
Geralmente, as portas paralelas no possuem portas bi-direcionais (dividimos uma porta paralela em
trs portas : Porta de dados, Porta de controle e Porta de status). Existem cartes que possibilitam a

transmisso bi-direcional de dados por apenas uma porta, mas esses cartes so de uso especfico e
com certeza no vieram em seu computador.
Pode-se transmitir 1 byte (8 bits) por vez (pela porta de dados) e receber at 9 bits por vez (atravs
das portas de controle e status).
A sada fsica da porta paralela, se faz por um conector DB25 fmea, o cabo de conexo geralmente
utilizado por uma impressora consiste em um conector DB25 (25 pinos) macho e um conector
Centronics (34 pinos) macho. O conector DB25 apresenta o nmero dos pinos na parte plstica onde
os mesmos esto fixados.
Vamos as pinos :
Pinagem
(DB25)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

Pinagem
(Centronics)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
32
31
36

18 25

19 30

Sinal

Direo

Porta

* Invertido ?

nStrobe
Data 0
Data 1
Data 2
Data 3
Data 4
Data 5
Data 6
Data 7
nAck
Busy
Paper Out/End
Select
nAuto-Linefeed
nError/nFault
nInitialize
nSelect Printer
nSelect In
Ground

In/Out
Out
Out
Out
Out
Out
Out
Out
Out
In
In
In
In
In/Out
In
In/Out
In/Out

Controle
Dados
Dados
Dados
Dados
Dados
Dados
Dados
Dados
Status
Status
Status
Status
Controle
Status
Controle
Controle

Sim
No
No
No
No
No
No
No
No
No
Sim
No
No
Sim
No
No
Sim

Gnd

A porta paralela trabalha com nvel TTL de tenso, isso significa +5V para nvel 1 e 0V para nvel 0.
A letra n na frente do sinal, significa que o sinal ativo de nvel baixo. Por exemplo nError, Se
houver um erro na impressora, ento esse sinal 0, quando o sinal for 1, significa que a impressora
est OK (isso s faz alguma diferena se voc for trabalhar com uma impressora).
O sinal que tiver um sim no item invertido, invertido pelo hardware, ou seja, se voc for
mandar para a impressora algo como 1111 e o bit dois for invertido, voc deve mandar 1101, para
que o programa que est efetuando a comunicao pela porta paralela entenda isso como 1111.

3. Os Endereos das Portas


Geralmente os micros possuem apenas uma porta paralela, a LPT1, essa porta acessada pelo
endereo 378H (hexadecimal). A LPT2 geralmente possui o endereo 278H. O endereo pode variar
de mquina para mquina. D uma olhada no BIOS para saber o endereo correto de sua porta.

A Porta de dados :
Endereo
378H (base)

Nome
Porta de dados

Direo
Out

Bit n
7
6
5
4
3
2
1
0

Propriedades
Data 7 (pino 9)
Data 6 (pino 8)
Data 5 (pino 7)
Data 4 (pino 6)
Data 3 (pino 5)
Data 2 (pino 4)
Data 1 (pino 3)
Data 0 (pino2)

Essa a porta de dados, para enviar dados por ela basta enviar um nmero x (0 a 256 8 bits) pelo
endereo 378H. Se voc tentar ler o dado escrito nessa porta, vai visualizar apenas o ltimo dado
escrito. Veja mais detalhes na seo de exemplos.
A Porta de Status :
Endereo
379H (base + 1)

Nome
Porta de status

Direo
In (only)

Bit n
7
6
5
4
3
2
1
0

Propriedades
Busy
Ack
Paper Out
Select In
Error
Irq (not)
Reserved
Reserved

A porta de Status serve apenas para leitura, qualquer dado enviado a esta porta ser ignorado.
A Porta de Controle :
Endereo
380H (base + 2)

Nome
Porta de controle

Direo
In/Out

Bit n
7
6
5
4
3
2
1
0

Propriedades
sem uso
sem uso
Enable bi-direc. port
Enable IRQ via ack line
Select printer
Initialize printer (reset)
Auto linefeed
Strobe

A porta de controle originalmente apenas uma porta de sada, mas alguns bits podem ser utilizados
para leitura.
O maior problema de usar os bits da porta de controle como bits de entrada, o fato deles serem
coletor-aberto, ou seja no esto nem em nvel 0 nem em 1, dependendo do circuito, se faz
necessrio o uso de um resistor de pull-up.

4. Usando a porta para ler 8 bits


No se desespere se a sua porta no bi-direcional, como j comentado anteriormente, possvel
enviar at 9 bits para a porta paralela atravs das portas de controle e status.
Se voc quiser utilizar 8, ento use esses bits :
Bit
Busy
Ack
Paper Out
Select
Select Printer
Init
Auto linefeed
Strobe

Pino
11
10
12
13
17
16
14
1

Invertido ?
Sim
No
No
No
Sim
No
Sim
Sim

Se voc no tem experincia na construo de circuitos, aconselho voc a utilizar somente os 4 bits
da porta de status, exatamente pelo fato da porta de controle ser coletor-aberto. O no uso de
resistores de pull-up, vai gerar em muitos casos, instabilidade na entrada. Se voc vai ligar a porta
diretamente a um microcontrolador, ai ento no h problema, visto que os uC j tem resistores
internos de pull-up.

5. Exemplos reais
Observe o esquema :

Se voc quer testar a sada de dados de sua porta paralela, ento monte esse pequeno circuito e
prepare-se para a diverso.
Esse circuito composto por um latch octal tri-state (74HC573) que neste circuito est apenas
atuando como isolador entre o circuito da porta e o circuito construdo.
Bsicamente, voc tem 256 formas de acender esses leds (1 byte).
No esquea de ligar o negativo da bateria aos pinos ground da paralela.
Vamos ao famigerados exemplos em basic :
Os programas so cortesia de Leandro Schunk

Exemplo 1
Neste exemplo, voc digita um valor e este ser enviado para a porta paralela :
10 INPUT X
OUT &H378, X
GOTO 10
Exemplo 2
Quer brincar de super mquina ?
DECLARE FUNCTION TEMPO (T)
CLS
OUT &H378, 0
X=1
WHILE INKEY$ <> CHR$(27)
WHILE X <= 128
OUT &H378, X
X=X*2
T = TIMER: WHILE TIMER < T + .04: WEND
WEND
X = 64
WHILE X >= 1
OUT &H378, X
X=X/2
T = TIMER: WHILE TIMER < T + .04: WEND
WEND
X=2
WEND
OUT &H378, 0
FUNCTION TEMPO (T)
FTEMP = TIMER + T
WHILE FTEMP > TIMER
WEND
END FUNCTION

Exemplo 3
Com as setas voc controla a direo das luzes
CLS
OUT &H378, 1
X=1
Y=2
WHILE 1
SLEEP
SELECT CASE INKEY$
CASE "2"
IF X < 128 THEN
X=X*2
ELSE
X=1
END IF
OUT &H378, X
CASE "1"
IF X > 1 THEN
X=X/2
ELSE
X = 128
END IF
OUT &H378, X
CASE CHR$(27)
END
END SELECT
WEND
OUT &H378, 0

Como voc pode ver, enviar um dado para a porta paralela facil, basta usar o comando OUT, que
tambm usado em assembly.

Coisas que voc tem que saber !!!


A capacidade mxima de corrente fornecida por uma porta paralela, de mais ou menos 12mA (varia
de micro para micro). Portanto, no tende acender nada diretamente pela porta paralela a menos
que voc saiba exatamente o que est fazendo.
recomendado que voc utilize alguma forma de isolao entre a porta e o circuito que est
controlando, principalmente se for um circuito de potncia. Qualquer retorno de tenso no previsto
com certeza vai fritar a sua porta paralela e com sorte at a sua placa me.
Uma boa pedida utilizar acopladores pticos.
Se voc vai trabalhar diretamente com microcontroladores, ento geralmente nem se faz necessrio
utilizar isoladores, mas TENHA CERTEZA DO QUE EST FAZENDO.
Basicamente isso.

También podría gustarte