Cette interface est largement utilisée pour toutes les applications simples ce contrôle se branchant sur un PC. Ce petit texte de description est tiré du livre Montages Avancés Pour PC. Vous pouvez le copier à condition de le garder intact. Afin d'améliorer ce document, toutes les suggestions sont bienvenues. |
Géométrie |
Le port parallèle des PC et compatibles se présente sous la forme
d'une prise DB25 femelle dont voici la géométrie:
DB25 Femelle (vue de derrière) ------------------------------ \ 1 2 3 4 5 7 8 ... 13 / \ 14 15 16 17 18 .......25 / --------------------------Ce port ayant avant tout été pensé pour communiquer avec une imprimante, vous vous apercevrez que la plupart de ses signaux ont un rapport avec ce périphérique. Il possède 17 broches utilisables ainsi que 8 broches reliées à la masse. Leurs affectations physiques sont les suivantes: BROCHE NOM Sortie du PC Entré dans le PC -------------------------------------------------------- 1 /STROBE X X 2 D0 X X si EPP 3 D1 X X si EPP 4 D2 X X si EPP 5 D3 X X si EPP 6 D4 X X si EPP 7 D5 X X si EPP 8 D6 X X si EPP 9 D7 X X si EPP 10 /ACK X 11 BUSY X 12 PE X 13 SELECT X 14 /AUTOFEED X X 15 /ERROR X 16 /INIT X X 17 /SELECT IN X X 18-25 MASSE X X |
Description des signaux |
|
Performances |
La vitesse de transmission maximale que l'on peut espérer obtenir
avec un tel port est de l'ordre de 150ko/s. Les ports plus récents,
de type EPP (pour Enhanced Parallel Port, développé par Xircom,
Zenith et Intel en 1991), permettent d'atteindre un débit de 2Mo/s
soit un débit environ treize fois supérieur. Si il reste inférieur
au débit du bus ISA (8Mo/s) il permet néanmoins la réception de
périphériques tels que des lecteurs de CD-ROM ou des disques durs.
En plus d'un débit supérieur, les ports EPP sont bidirectionnels.
Encore plus récent, le port ECP (Extended Capacity Port) possède
la particularité d'être Plug and Play (traduire par: branchez
et utilisez). Il dérive du port EPP et en possède les même caractéristiques.
Sa particularité est qu'il permet au périphérique branché sur
celui-ci de s'identifier à la machine dès le démarage. Ainsi l'imprimante
peut s'autoconfigurer lors du lancement du système d'exploitation
(à condition que ce dernier et le BIOS soient eux aussi compatibles
Plug and Play). Mais du point de vue de l'électronicien amateur,
l'avantage de ces ports est sans conteste leur bidirectionnalité. Néanmoins, que ceux qui n'ont pas de port étendu se rassurent, il est tout à fait possible de rendre bidirectionnel le port grâce à une petite astuce. L'interface parallèle possède en effet 4 bits en entrée (ACK, BUSY, PE et SELECT). Il suffit de multiplexer les 8 bits dont on veut effectuer l'acquisition en deux quartets. La sélection du quartet haut ou du quartet bas s'effectue par une ligne libre du port (SELECT IN par exemple). Ainsi un simple multiplexeur du type 74LS157 résout le problème...
|
Programmation |
Cette interface se programme de manière très simple: trois registres
seulement sont nécessaire au contrôle total des signaux. En fait,
si vous possédez plusieurs ports parallèles il y aura autant de
groupe de trois registres que de nombre de port. Cette précision
peut paraître évidente mais cela ne coûte rien de le dire...
|
Lignes de données (378h) |
A moins que vous ne possèdiez une interface
parellèle étendue, ce registre n'est accessible qu'en écriture.
L'écriture d'un octet dans ce registre place immédiatement les
lignes D0-D7 aux niveaux demandés sur la prise. Il est une croyance
populaire qui dit que les données ne deviennent valables en sortie
que si la ligne STROBE est à l'état bas, mais il n'en est rien.
Il n'y a pas de logique interne de ce type dans les interfaces
parallèles.
7 6 5 4 3 2 1 0 * . . . . . . . D7 . * . . . . . . D6 . . * . . . . . D5 . . . * . . . . D4 . . . . * . . . D3 . . . . . * . . D2 . . . . . . * . D1 . . . . . . . * D0 |
Etat de l'imprimante (379h) |
Ce registre, accessible uniquement
en lecture, est l'image de l'état des lignes ERROR, SELECT, PE,
ACK et BUSY. Il faut cependant remarquer que le bit 7 du registre
(correspondant à l'image de la ligne BUSY) est inversé par rapport
à l'entrée. Un inverseur est en effet présent entre la prise et
le registre. Attention donc à ne pas se tromper.
7 6 5 4 3 2 1 0 * . . . . . . . /BUSY (Logique inversée) . * . . . . . . /ACK . . * . . . . . PE . . . * . . . . SELECT . . . . * . . . /ERROR . . . . . * * * Indéfini |
Commande de l'imprimante (37Ah) |
Ce dernier registre est accessible
à la fois en lecture et en écriture. Les 4 premiers bits sont
l'image des lignes STROBE, AUTOFEED, INIT et SELECT IN (attention
ici aussi aux inverseurs placés entre la prise et le registre).
Le bit 4 autorise ou non le déclenchement d'une interruption lorsque
ACK passe à l'état bas (c'est à dire quand l'imprimante valide
la réception d'un caractère). Le bit BIT CTRL n'a de sens que pour les ports bidirectionnels (EPP, ECP). En mettant ce bit à 1, le port est accessible en écriture. 7 6 5 4 3 2 1 0 * * . . . . . . Inutilis&eactues . . * . . . . . BID CTRL . . . * . . . . IRQ INABLE . . . . * . . . SELECT IN (Logique inversée) . . . . . * . . /INIT . . . . . . * . AUTOFEED (Logique inversée) . . . . . . . * /STROBE (Logique inversée) |
Auteurs: Eric Larchevêque et
Laurent Lellu
extrait du livre Montages Avancés pour PC |
[Accueil] [La Page Electronique] |