[ La porta parallela SPP: indice ] [ Pagina successiva ]
Il comune PC in genere possiede una sola porta parallela a cui possono (o potevano) essere connessi la stampante ed altri dispositivi "paralleli"(ZIP, scanner, lettori CD esterni…). Essa è spesso chiamata anche porta LPT (line printer), porta PRN (printer port), porta stampante oppure ancora interfaccia Centronics.
La porta parallela è facilmente riconoscibile guardando il computer dall'esterno: appare come un connettore a 25 poli DB25 femmina cioè con 25 fori, disposti due due linee tra di loro sfalsate, posto normalmente sul retro del PC. Non va confusa con la porta seriale che, nei vecchi PC, è costituita da un connettore DB25 maschio (cioè con gli "spilli"). Alcuni PC, particolarmente ricchi di periferiche e non particolarmente recenti, hanno anche altri connettori femmina a 25 poli, per esempio quello di alcune porte SCSI per scanner.
Il connettore in genere installato sulle stampanti (centronics) è a 36 pin ed ha una diversa forma, pur avendo sostanzialmente la stessa funzione; in genere è scomodo da utilizzarsi in quanto ha troppi pin "inutili".
Nella prima fotografia, relativa ad un vecchio PC del 1990 circa si vede in alto il connettore della porta parallela ed in basso i connettori delle due porte seriali, un DB25 ed un DB9.
La seconda fotografia è relativa ad un PC più recente. La porta parallele è quella di color rosso. Gli altri connettori sono la porta joystick e midi (giallo), le due porte seriali a 9 pin, i tre connettori circolari audio (in basso sulla destra), i due connettori USB (sulla sinistra, uno è in parte nascosto) e i due connettori per la tastiera e il mouse (verdi e viola, con i cavi collegati).
Qualora si intendesse usare la LPT per circuiti autocostruiti è cosa quanto mai opportuna installare una seconda parallela. Questo evita da una parte la necessità di sconnettere la stampante ogni volta che si lavora e dall'altra, nel caso di errori, non si rischia la rottura dei chip montati sulla scheda madre.
Un altro consiglio è quello di procurarvi una cavo "prolunga" di uno o due metri con un connettore DB25 maschio e uno femmina (oppure un doppio connettore maschio) e tutti i fili connessi uno a uno, cioè il pin uno di un connettore connesso all'uno dell'altro connettore, il due al due e così via. Ciò permette di poter comodamente lavorare senza spostarsi continuamente sul retro del PC. Molto utile anche un gender changer femmina-femmina e, eventualmente, maschio-maschio.
Nella fotografia: sulla sinistra un cavo maschio-maschio (i due connettori sono identici), un normale cavo centronics per il collegamento della stampante e, in primo piano, l'adattatore che converte un connettore maschio DB25 in un connettore femmina.
Nel tempo la porta parallela montata nel PC si è evoluta anche se, con qualche eccezione, si è mantenuta la compatibilità con i primi modelli: questo significa che tutti i circuiti progettati per essere collegati alla porta parallela del primo PC-XT IBM possono, almeno in teoria, funzionare anche con un moderno P4.
Molti costruttori hanno in passato hanno apportato modifiche e miglioramenti allo standard SPP originario spesso senza porre attenzione alla compatibilità con i modelli di altri produttori: ciò ha reso inutilizzabili sulla generalità dei PC le caratteristiche avanzate disponibili solo per alcune porte parallele.
Le categorie che comprendono tutte le porte "moderne" sono sostanzialmente tre:
Tutti questi modi di funzionamento sono stati normati nello standard IEEE 1284 del 1994, accanto al Nibble Mode ed al Byte mode.
In seguito farò riferimento, più che alle norme, al comportamento reale delle porte installate nei PC attuali e passati. Nel caso di comportamenti differenti o legati a situazioni particolari evidenzierò la cosa al fine di mantenere la massima compatibilità anche a rischio di non ottimizzare le prestazioni, sconsigliando in particolare l'uso di alcune tecniche che rischierebbero di danneggiare il PC.
Prima di procedere alla descrizione delle porte, mi sembra opportuno indicare come configurare la porta nei vari modi di funzionamento, quando la cosa è ovviamente possibile.
Qui sopra, l'immagine della classica scheda parallela aggiuntiva su bus ISA, un investimento di una decina di euro di cui non ci si pentirà.
La scheda va installata in uno slot libero, previa configurazione di alcuni jumper:
Purtroppo molti PC recenti non dispongono del vecchio bus ISA, sostituito dal più performante PCI. Sono comunque disponibili anche schede per PCI come quella riportata nella fotografia seguente, in genere più costose ma anche più veloci.
Un problema che spesso si presenta con le schede PCI deriva dal fatto che non sono presenti jumper di configurazione ma per la configurazione occorre dipendere dai meccanismi di plug&play del BIOS e del sistema operativo o dai driver forniti dal costruttore (quando presenti!). Occorre anche dire che spesso i chip usati non sono documentati sulla rete (come nell'esemplare fotografato, un Sunix 1888)
Nei PC moderni la porta parallela è gestita da un chip che controlla anche altre interfacce (seriali, dischi...), direttamente saldato sulla scheda madre. In caso di errori nell'uso dell'interfaccia parallela si possono causare guasti fisici irreversibili che si ripercuotono sul funzionamento di tutto il PC. Il chip non è in genere sostituibile e ciò causa la necessità di dover cambiare tutta la scheda madre, con costi e seccature facilmente immaginabili. Per questo vi consiglio vivamente di comprare una schedina parallela da installare su uno slot libero (anzi compratene due, perché in genere si rompono l'ultima domenica prima delle ferie estive…). Se possibile prendetene una che supporti anche la modalità EPP, certamente più flessibile e dallo stesso costo. L'unica difficoltà potrebbe essere quella di reperirla nel negozio sotto casa ma internet in questo è davvero utile.
Ovviamente la sicurezza non è assoluta ma mi sembra un buon compromesso: io non ho mai perso una scheda madre in questo modo, e ne ho usate e fatte usare tante... Comunque non è una bella idea usare per esperimenti il computer nuovo di zecca su cui gira la contabilità aziendale...
L'attenzione è una cosa che comunque non deve mai mancare; gli americani dicono "check and double-check".
Complessivamente sono disponibili sul connettore della porta parallela 12 bit per l'output e 5 per l'input. Gli ingressi e le uscite sono TTL compatibili (alcuni possono essere a collettore aperto, in genere con resistore di pull-up integrato all'interno del PC) anche se le tensioni e le correnti effettivamente disponibili sono piuttosto variabili in funzione delle tecnologie impiegate per la costruzione della porta.
Su molti PC un uno logico appare come una tensione molto vicina ai 5V, uno zero come 0V (a vuoto). Le correnti disponibili sono in genere di almeno 5 mA sia di sink che di source ma spesso molto di più (anche 50 mA e più). Non si tratta però di una regola: in genere deve essere interpretato come uno logico qualunque tensione superiore ai 2V e come zero logico qualunque tensione inferiore a 0.8V. Inoltre si potrebbe ritenere che la corrente assorbita da un'uscita (Isink) sia maggiore, anche di molto, di quella erogata (Isource).
E' quindi buona norma progettare circuiti che riescano a gestire correttamente segnali che rappresentano l'uno logico sia con i 2V sia con i 5V (quali per esempio i TTL, gli HCT o gli HC con resistore di pull-up. E' anche opportuno evitare correnti in ingresso o uscita superiori a qualche mA.
La seguente tabella riporta l'assegnazione dei pin (sia sul connettore DB25 che su quello Centronics), il loro nome, la direzione (Out significa che il PC invia il bit alla periferica) ed il nome del registro utilizzato per controllarli.
Pin DB25 |
Pin centronics |
Nome |
Direzione |
Registro |
1 |
1 |
Strobe |
Out * |
Control |
2 |
2 |
Data 0 |
Out |
Data |
3 |
3 |
Data 1 |
Out |
Data |
4 |
4 |
Data 2 |
Out |
Data |
5 |
5 |
Data 3 |
Out |
Data |
6 |
6 |
Data 4 |
Out |
Data |
7 |
7 |
Data 5 |
Out |
Data |
8 |
8 |
Data 6 |
Out |
Data |
9 |
9 |
Data 7 |
Out |
Data |
10 |
10 |
Ack |
In |
Status |
11 |
11 |
Busy |
In |
Status |
12 |
12 |
Paper Out |
In |
Status |
13 |
13 |
Select |
In |
Status |
14 |
14 |
Linefeed |
Out * |
Control |
15 |
32 |
Error |
In |
Status |
16 |
31 |
Inizialize |
Out * |
Control |
17 |
36 |
Select-in |
Out * |
Control |
18-25 |
19-30, 33 |
Massa |
- |
- |
- |
18, 35 |
+ 5V (Rpu) |
- |
- |
- |
15, 34 |
Non usato |
- |
- |
I pin di uscita evidenziati da un * sono utilizzabili anche come ingresso ma solo su alcune porte, come descritto più avanti. In questo caso si tratta di un’uscita a collettore aperto (open collector).
Alcuni dei pin del connettore Centronics a 36 pin non sono presenti sul connettore a 25 pin.
Realizzando un circuito connesso alla porta parallela è opportuno collegare tutti i fili di massa, sia per semplificare il layout del circuito stampato sia per diminuire gli eventuali disturbi.
L'immagine seguente evidenzia i pin di uscita con l'indicazione dei relativi registri, visti dal connettore del PC. I pin non indicati sono tutti connessi a massa.
Verificate con attenzione la corrispondenza dei pin leggendo sul connettore stesso la numerazione (è sempre presente, almeno per i 4 pin agli angoli), soprattutto se si usano prolunghe o simili.
Attenzione in particolare al fatto che, utilizzando un adattatore maschio la corrispondenza dei pin è, ovviamente, simmetrica, dato che deve incastrarsi in un connettore femmina. Analogamente se si guarda un connettore da "dietro" (cioè dal lato su cui si eseguono le saldature) i pin appaiono, ovviamente, simmetrici.
La porta parallela - Versione 2.2a - Luglio 2006
Copyright © 1999-2001-2006, Vincenzo Villa (https://www.vincenzov.net)
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".