Connecteur LTP. Caractéristiques et principe de fonctionnement du port imprimante lpt

L'un des ports informatiques les plus anciens est le port LPT ou port parallèle. Et bien que le port LPT soit maintenant visible loin de tout carte mère, cependant, les lecteurs peuvent être intéressés de savoir ce que c'est.

Tout d'abord, parlons du nom du port. Peut-être que tout le monde ne sait pas ce que signifie l'abréviation LPT. En fait, LPT est une abréviation de l'expression Line Print Terminal (terminal d'impression en ligne). Ainsi, il devient clair que le port LPT était principalement destiné à connecter des imprimantes. C'est pourquoi le port LPT a un autre nom - le port d'imprimante. Bien que théoriquement, d'autres appareils puissent se connecter au LPT.

Le port LPT a une longue histoire. Il a été développé par Centronics (c'est pourquoi ce port est souvent appelé le port Centronics), qui produisait des imprimantes matricielles avant même l'ère des ordinateurs personnels, au début des années 1970. Et au début des années 1980, le port LPT a commencé à être utilisé par IBM dans leurs ordinateurs et est devenu pendant un certain temps le port standard pour connecter des périphériques à haut débit (à l'époque).

Vue externe du port parallèle à l'arrière de l'ordinateur

L'interface LPT a existé dans plusieurs éditions. Dans la version originale, le port LPT était unidirectionnel, c'est-à-dire qu'il ne pouvait transmettre des données que dans une seule direction - vers un périphérique. Bien sûr, cette situation ne convenait pas aux utilisateurs, car certaines imprimantes nécessitaient un transfert de données dans les deux sens. Par conséquent, par la suite, l'interface LPT a été améliorée à plusieurs reprises jusqu'à l'élaboration de sa norme internationale IEEE 1284. Conformément à cette norme, l'interface de port parallèle prenait en charge plusieurs modes de fonctionnement et était également compatible avec les normes plus anciennes. De plus, l'interface dans sa version finale supportait des débits de transfert de données relativement élevés - jusqu'à 5 Mb/s.

Comment fonctionne le port parallèle

Le port LPT est appelé parallèle car dans le câble qui y est connecté, les données sont transmises en parallèle, c'est-à-dire simultanément sur plusieurs conducteurs. Dans cette propriété, un port parallèle diffère d'un autre port sur un ordinateur - port série com.

Il y a 8 conducteurs qui transmettent les données eux-mêmes dans le câble Centronics.De plus, il y a plusieurs lignes dans le câble à travers lesquelles les signaux de commande sont transmis.

Bien que le port parallèle soit principalement utilisé pour connecter des imprimantes, il y avait d'autres utilisations. Tout d'abord, en utilisant le port LPT, vous pouvez connecter directement deux ordinateurs - à l'aide d'un câble Interlink spécial. Avant répandu cartes réseau Une connexion de type Ethernet, bien qu'elle ne fournisse pas à l'utilisateur un taux de transfert de données élevé, était cependant souvent le seul moyen de relier deux ordinateurs. Il existe également des dongles conçus pour se connecter au port LPT.

Câble pour transfert de données entre ordinateurs - Interlink

Comme avec de nombreux autres périphériques sur une carte mère, les modes de fonctionnement du port parallèle peuvent souvent être configurés via Configuration du BIOS. En règle générale, les options du BIOS telles que le port parallèle, l'IRQ du port parallèle, le DMA du port parallèle, etc. sont utilisées à cet effet.

Connecteur parallèle de la carte mère et câble Centronics

Le connecteur du port LPT est généralement situé directement sur la carte mère, bien que jusqu'au milieu des années 1990. il était généralement présent sur la soi-disant multi-carte insérée dans le connecteur d'extension, sur laquelle se trouvaient également d'autres ports de l'ordinateur. La sortie du port est un connecteur femelle à 25 broches appelé connecteur DB25.

Multicard ISA avec LPT (DB25 - "mère") et un port de jeu à bord.

Pour se connecter à l'imprimante, un câble spécial est utilisé - le câble Centronics. Une extrémité (mâle) du câble Centronics est connectée au port, l'autre (également mâle) à un connecteur spécial pour imprimante. Le dernier connecteur a 36 broches. Par conséquent, une caractéristique du câble Centronics est qu'il a des connecteurs différents des deux côtés.

Apparition du câble Centronics.

Bien que le connecteur du câble de la carte mère soit souvent appelé connecteur Centronics, à proprement parler, un connecteur Centronics n'est qu'un connecteur à 36 broches pour la connexion à une imprimante, pas à une carte mère. Le connecteur de câble à connecter au port s'appelle le connecteur Amphenolstacker, du nom du fabricant américain de connecteurs Amphenol qui l'a développé.

Caractéristiques du port parallèle

En raison du fait que le port LPT prend en charge le transfert de données parallèle, dans les premiers PC, ce port était considéré comme l'un des ports informatiques les plus rapides. La transmission des données sur plusieurs lignes rapproche l'architecture de l'interface LPT des bus informatiques. Cependant, cette circonstance impose également une limitation de la longueur du câble qui, en raison des interférences se produisant dans le câble, ne peut pas dépasser 5 m.

La tension maximale utilisée dans les lignes de signal du port est de +5 V. Pour un transfert de données simple, seules dix lignes de signal sont nécessaires - il s'agit de 8 lignes de données réelles, une ligne de signal stroboscopique, c'est-à-dire un signal indiquant que le port est prêt pour le transfert de données et une ligne occupée . Les lignes restantes sont utilisées pour la compatibilité avec la norme Centronics.

Port LPT femelle avec numérotation des broches.

Brochages du connecteur du port parallèle DB25 :

  • 1 - Stroboscope de données
  • 2-9 - Données, bits 0-7
  • 10 - Acknowledge (Confirmation de l'imprimante)
  • 11 - Occupé (Occupé)
  • 12 - Plus de papier (Plus de papier)
  • 13 - Sélectionner (Imprimante active)
  • 14 - Alimentation automatique
  • 15 - Erreur
  • 16 - Init (initialisation de l'imprimante)
  • 17 - Sélectionnez l'entrée
  • 18-25 - Terre

Conclusion

Le port LPT est une interface d'ordinateur personnel qui est maintenant considérée comme obsolète et qui manque d'un support important de la part des fabricants de matériel informatique et Logiciel. Cependant, le port parallèle est toujours utilisé avec succès dans de nombreux ordinateurs et imprimantes plus anciens.

Nous vous recommandons vivement de faire sa connaissance. Vous y trouverez de nombreux nouveaux amis. De plus, c'est le plus rapide et façon efficace contacter les administrateurs du projet. La section Mises à jour antivirus continue de fonctionner - mises à jour gratuites toujours à jour pour Dr Web et NOD. Vous n'avez pas eu le temps de lire quelque chose ? Le contenu complet du ticker est disponible sur ce lien.

Travailler avec le port LPT sous Win NT/2000/XP

Port LPT (L ine P rin J er) est un port d'interface parallèle, créé à l'origine pour connecter une imprimante. Le BIOS fournit la prise en charge du port LPT requise pour la sortie Centronics. L'espace d'adressage du port occupe la plage &H378-&H37F

Le port LPT a 12 lignes de sortie et 5 lignes d'entrée. Un si grand nombre de lignes fait possibilité de connexion au port d'un équipement simple, peut-être même sans son propre microcontrôleur. Par conséquent, ce port, malgré la disparition des imprimantes avec une interface LPT, est activement utilisé pour connecter de simples programmeurs de puces mémoire, des interfaces JTAG pour flasher (remplaçant le logiciel) des récepteurs satellites, des lecteurs DVD et d'autres équipements électroniques. Le port LPT est également populaire auprès des moddeurs, car il vous permet de connecter des écrans LCD à votre ordinateur sans créer de cartes d'interface complexes.

Windows 2000/XP ne permet pas aux applications d'accéder directement aux ports d'E/S. Pour ce faire, vous devez utiliser un pilote qui fonctionne en mode KERNEL (en mode noyau du système d'exploitation).

Restreindre l'accès aux ports d'E/S pour les programmes d'application réguliers (s'exécutant en mode utilisateur) rend le système d'exploitation plus stable. Bien que, d'un autre côté, personne n'empêche le programmeur d'écrire un pilote qui accède aux ports.

Fait intéressant, pour Processeur Intel x86, vous pouvez écrire un pilote qui adopte l'une des deux approches fondamentalement différentes. La première option est que le pilote lui-même accède aux ports et que le programme d'application indique uniquement au pilote ce qu'il doit faire. Cette option est généralement standard et préférée.

Pour résoudre le problème, il existe quatre options de pilote populaires qui permettent à un programme d'application d'accéder aux ports d'E/S : DLPortIO, chauffeur UserPort, chauffeur GiveIO.sis, chauffeur Port95nt.

Les quatre options sont presque équivalentes.

Pilote DLPortIO

DLportIO - pilote d'accès au port du package PiloteLINX par Scientific Software Tools, Inc. (http://www.sstnet.com) sous une forme abrégée (sans description et documentation inutile). Pour le fonctionnement normal des programmes de maintenance LCD, il est recommandé de cette version du pilote.

Le pilote lui-même se compose de deux composants :
. DLPortIO.dll - DLL Win32 qui fournit des E/S matérielles et
. DLPortIO.sys - pilote pour WinNT fonctionnant en mode noyau du système d'exploitation (non requis pour Win95/98)

Dans le package d'installation du pilote, en plus de ces deux composants, il existe également un fichier Install.exe qui déplace les deux éléments ci-dessus dans le dossier Pilotes Windows et de les enregistrer dans le système.

Il n'y a rien de plus à écrire sur ce pilote. Aucune configuration requise. Téléchargez, installez, utilisez. N'oubliez pas de regarder à la fin de l'article et de lire les performances du port LPT.

L'installation est élémentaire - exécutez le fichier Install.exe, installez. À la fin de l'installation, regardez dans le dossier C:\Windows\System32\drivers et vérifiez la présence de deux fichiers de pilote (DLPortIO.sys et DLPortIO.dll). Si nous constatons que ces fichiers n'ont pas été copiés, nous les retirons de package d'installation et copier manuellement. Ne vous inquiétez pas, rien de mal n'arrivera à votre ordinateur. Nous redémarrons l'ordinateur et travaillons avec le port LPT.

Si soudainement, à la suite de manipulations avec l'équipement, vous recevez un message du pilote comme celui-ci : "pilote de périphérique dlportio.sys non chargé. Le port I/O n'aura aucun effet", pas de panique. Ce problème est résolu comme ceci :
. Nous commençons regedit.
. On va dans le registre à la succursale HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\.
. Dans le dossier dlportio, modifiez la valeur du paramètre début au 1 .
. Nous redémarrons l'ordinateur.

Pilote de port utilisateur

Chauffeur UserPort ouvre l'accès aux ports dans Win NT/2000/XP pour les programmes. Cette version du pilote de port LPT est le plus souvent utilisée par les "techniciens" qui travaillent avec des programmeurs et des JTAG, car le pilote possède au moins certains paramètres de configuration.Il peut également être utilisé pour exécuter des programmes de service LCD.

Il y a trois fichiers dans l'archive du pilote :
. UserPort.sys - pilote pour WinNT, fonctionnant en mode noyau du système d'exploitation,
. UserPort.exe - programme de configuration du pilote et
. UserPort.pdf - fichier de description.

Définition du port utilisateur :
. 1. Décompressez l'archive dans un dossier séparé.
. 2. Copiez le fichier UserPort.sys dans C:\Windows\System32\drivers

Paramètre du port utilisateur :
. Exécutez UserPort.exe.
. Un panneau avec 2 fenêtres apparaîtra devant nous.

La fenêtre de gauche fait référence au travail du programme dans la fenêtre DOS, celle de droite à plein écran. Par défaut, ils contiennent des numéros de port LPT - tous peuvent être supprimés à l'aide du bouton "Supprimer". Dans les deux fenêtres, vous devez entrer les numéros de port souhaités que vous prévoyez d'utiliser.

Pour une utilisation à partir du pilote avec la plupart des programmeurs, des JTAG et des programmes de service d'affichage, ajoutez les options suivantes à la colonne de gauche :
378 , 379 et 37A pour LPT1
278 , 279 et 27A pour LPT2(Si l'adresse du port LPT est réaffectée dans le BIOS).

Laissez-moi vous expliquer ce que signifient les chiffres. 0x378 est l'adresse du port.
. L'adresse 0x378 appelé basique et est utilisé pour écrire et lire Les données vers et depuis le port, sur le bus de données D0-D7.
. L'adresse 0x379 (base+1) créé pour peu de lectureétat de l'appareil connecté au port LPT.
. L'adresse 0x37A (base+2) sert pour enregistrements de bits contrôle de l'appareil connecté au port LPT.

Ajouter comme ceci :
0x378-0x378
0x37A-0x37A



Vous devez ajouter des adresses de port à la liste via la fenêtre de saisie et en utilisant le bouton "Ajouter". L'adresse 0x379 le plus souvent, il n'est pas nécessaire et peut être omis, car il est destiné à peu de lectureétats d'un appareil connecté au port LPT, et la plupart des appareils (programmateurs, JTAG "et plus encore les indicateurs LCD) ne génèrent pas de signaux d'état. Si vous le souhaitez, vous pouvez au contraire saisir toute la plage d'adresses attribuées par le système pour le port LPT 0x378-0x37F.

Nous allons à Panneau de commande, Système, sélectionnez l'onglet Matériel, Gestionnaire de périphériques, allez dans Ports (COM et LPT) et regardez les propriétés du port LPT sur lequel vous souhaitez établir une connexion. Dans Propriétés, ouvrez l'onglet Ressources et regardez la valeur du paramètre Plage d'entrée/sortie (E/S). (Généralement sous Windows XP, c'est 378-37F)

Après avoir généré la liste des adresses, vous devez appuyer sur le bouton "Démarrer", le pilote sera lancé et un message apparaîtra :



Cliquez ensuite sur le bouton "Mettre à jour", le pilote sera enregistré dans le système, puis "Quitter". Bien sûr, il n'est pas nécessaire d'appuyer sur le bouton "Stop" pendant que nous utilisons le pilote.

Si le système redémarre lorsque vous cliquez sur le bouton "Mettre à jour", vous devez essayer de commencer à enregistrer le pilote sur le système avec des droits d'administrateur ou essayer de désactiver temporairement le pare-feu ou l'antivirus, ce qui peut bloquer les interférences dans processus système. Si quelque chose ne fonctionne pas, lisez UserPort.pdf

Pour vérifier si l'accès aux ports est apparu, vous pouvez exécuter le programme "lpt test.exe".

Après le démarrage du programme, une fenêtre apparaîtra avec le contenu suivant :



L'absence du message "Le port LPT est en cours de test (Adresse XXXh)" et les lignes qui le suivent indiquent que le pilote ne fonctionne pas.

Ce programme envoie simplement au registre de données Dx et au registre de contrôle Ux du port LPT divers numéros puis les lit. Le registre d'état Sx du port LPT est en lecture seule. Le numéro et l'adresse du port LPT testé s'affichent à l'écran. Si le port est sain, aucun message ne doit être émis pour les registres Dx et Ux.



LPT-TEST v1.03 1995-2003 Copyright (C) S. B. Alemanov. Moscou "BINAR".
Pendant les tests, aucun périphérique ne doit être connecté aux ports.
Dx - rég. données (sortie), Ux - reg. contrôle (sortie), Sx - reg. état (inp).

Le port LPT1 est en cours de test (adresse 378h)
2ème contact (D0) - pas de "1"
3ème broche (D1) - pas de "1"
4ème broche (D2) - pas de "1"
5ème broche (D3) - pas de "1"
6ème broche (D4) - pas de "1"
7ème broche (D5) - pas de "1"
8ème broche (D6) - pas de "1"
9ème broche (D7) - pas de "1"
1er contact (U0) - pas de "1"
14ème broche (U1) - pas de "1"
17ème broche (U3) - pas de "1"
1er contact (U0) - pas de "0"
14ème contact (U1) - pas de "0"
17ème contact (U3) - pas de "0"
15ème contact (S3) - pas de "0"


Si les registres Dx ou Ux sont en défaut, alors le message "no 0" ou "no 1" est affiché et le numéro de la broche sur le connecteur LPT est indiqué (les signaux sur cette broche sont visualisables avec un oscilloscope). L'entrée du registre d'état Sx peut être "0" ou "1", mais généralement, lorsque rien n'est connecté au port LPT, toutes les entrées du registre d'état ont un "1". L'apparition du registre d'état "0" à l'entrée peut être un signe que l'entrée a été cassée, si auparavant il y avait toujours un "1".
Sur certaines machines, si le registre de données ou le registre de contrôle est défaillant, alors l'accès au port LPT n'apparaît pas du tout. Apparemment, lorsque l'ordinateur est allumé, le BIOS teste le port LPT et, s'il est défectueux, le désactive.

Si des problèmes surviennent, il est possible que certains pilotes interfèrent avec le travail, envoyant périodiquement des impulsions au port LPT (cela peut être vu avec un oscilloscope). Par exemple, vous pouvez vous déconnecter du port LPT dans les paramètres de l'imprimante :
désactiver LPT1 : port d'imprimante
activer FICHIER : Imprimer dans un fichier

Une fois tous les problèmes résolus et le test réussi, l'accès aux ports devrait apparaître et vous pouvez exécuter un programme à l'aide du port LPT. Sinon, le périphérique connecté au port d'une telle machine ne fonctionnera pas.

Pilote GiveIO.sys

En 1996, le programmeur américain Dale Roberts a mené une série d'expériences, qui ont abouti à un pilote GiveIO.sys. Jusqu'à présent, ce pilote reste l'un des outils populaires permettant à un programme d'application d'accéder aux ports d'E / S.

L'auteur du pilote lui-même recommande fortement que ce pilote soit utilisé uniquement à des fins de débogage. version finale programme d'application au lieu d'accéder indépendamment aux ports d'E / S, il convient de confier cette question à un pilote écrit spécifiquement à cet effet. Le pilote doit se comporter "correctement" en vérifiant si le périphérique est déjà utilisé par une autre application.

Cependant, si vous êtes absolument sûr que personne d'autre n'utilise les ports d'E / S requis (par exemple, vous n'avez pas d'imprimante connectée au LPT), vous pouvez utiliser en toute sécurité le pilote GiveIO.sys.

Installation du pilote:

1. Téléchargez l'archive, décompressez et copiez le fichier GiveIO.sys dans le répertoire C:\Windows\System32\Drivers (on suppose que votre Windows est installé dans le répertoire C:\Windows).
. 2. Exécutez le fichier install.reg. Le message suivant apparaîtra à l'écran :


. 3. Nous répondons par l'affirmative. Un message apparaîtra indiquant que les informations ont été saisies avec succès dans le registre. Si vous le souhaitez, vous pouvez le vérifier. Nous lançons l'éditeur de registre regedit.exe et dans la branche HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\giveio vérifiez les entrées suivantes :


. 4. Nous redémarrons l'ordinateur et vérifions le fonctionnement des programmes qui utilisent le pilote.

chauffeur GiveIO.sys les gens utilisent activement et, au fil du temps, sont apparus et autres possibilités d'installation.

Par exemple, un chauffeur GiveIO.sys s'il existe un fichier avec des "informations sur le matériel" GiveIO.inf peut être installé via l'applet "Install Hardware".




Nous allons montrer le pilote GiveIO.sys au système d'exploitation afin qu'il croie en l'existence du matériel "GiveIO".

Télécharger un ensemble de fichiers pour cette option d'installation du pilote GiveIO.sys(donnezio_sys_v2.rar - 78kb). L'archive contient les fichiers GiveIO.sys et GiveIO.inf, ainsi que Instructions détaillées pour l'installation avec illustrations.

Outre les options d'installation "manuelle" du pilote, plusieurs options d'installation ont été écrites pour effectuer l'installation en mode automatique.

Télécharger un ensemble de fichiers pour mise en place automatique Conducteurs GiveIO.sys(giveio_sys_install.rar - 28kb). L'archive contient les fichiers GiveIO.sys et instdrv.exe, ainsi que le fichier remove-giveio.cmd, avec lequel le pilote GiveIO.sys peut être retiré du système.

Pilote Port95nt

Le terme " chauffeur Port95nt" ne sera pas tout à fait correct ici. En fait, c'est le même pilote DLPortIO du paquet PiloteLINXà partir de Outils logiciels scientifiques, Inc., uniquement dans sa version complète, avec quelques utilitaires de gestion de ports, avec une description et de nombreux exemples pour les programmeurs. Pour un utilisateur ordinaire, les composants supplémentaires ne présentent aucun avantage et les composants des pilotes DLPortIO.sys et DLPortIO.dll sont exactement les mêmes que dans la version réduite.

Mentionné Port95nt comme pilote pour deux raisons. La première concerne l'exhaustivité de la liste des références aux pilotes de port LPT trouvées sur Internet.

La deuxième raison est que dans certains cas, il peut y avoir des problèmes lors de l'installation d'une version réduite de DLPortIO sous WinXP. Habituellement, mais rarement, cela se produit dans les versions "auteur" simplifiées de WinXP. Dans ce cas, vous pouvez prendre version complète programme d'installation (1,5 Mo). Bien que, à mon avis, il sera plus rapide de placer manuellement DLPortIO.sys et DLPortIO.dll dans le bon dossier que de s'embêter avec la sélection d'un programme d'installation qui peut le faire pour vous.

Mesures supplémentaires

En plus d'installer l'un des pilotes ci-dessus, pour le fonctionnement normal du port LPT sous WinXP, vous devez modifier le registre à l'aide d'un fichier REG xp_stop_polling.reg(xp_stop_polling.rar - 0.48kb)

Sous WinXP, les appareils utilisant le port LPT fonctionnent parfois de manière instable. La raison de ces échecs peut être le travail du sous-système Plug-and-Play (PnP) de Windows, interrogeant périodiquement le LPT afin de détecter les périphériques connectés. Une telle interrogation est effectuée lorsque le système démarre, mais elle peut également se produire pendant le fonctionnement. Malheureusement, le pilote DLportIO.sys et les autres options du pilote ne bloquent pas l'accès à LPT à partir d'autres programmes lorsque vous travaillez avec le port client de ce pilote, et le sous-système PnP est sûr que le port n'est pas occupé, y accède et perturbe le fonctionnement. périphériques externes. Pour résoudre le problème et utiliser le fichier .reg xp_stop_polling.reg. Ce fichier est enregistré dans le registre touche windows, qui interdit une telle interrogation (sondage) pendant que le système est en marche.

En plus d'installer le pilote et de restreindre l'accès simultané au port pour les programmes, afin d'assurer la compatibilité matérielle et le fonctionnement normal de l'équipement avec un port LPT, il est nécessaire de régler le BIOS sur adresse correcte et mode de fonctionnement des ports("Normal", SPP ou EPP, mais pas ECP).

Les paramètres suivants sont sujets à configuration via la configuration du BIOS :

Adresse de base, qui peut être 378h, 278h et 3BCh. Lors de l'initialisation, le BIOS vérifie la présence de ports aux adresses dans cet ordre et, en conséquence, attribue les noms logiques LPT1, LPT2, LPT3 aux ports détectés. L'adresse 3BCh a un adaptateur de port situé sur la carte MDA ou HGC (les précurseurs des cartes graphiques modernes). La plupart des ports sont configurés pour adresser 378h par défaut et peuvent être commutés sur 278h.

La ligne de demande d'interruption utilisée, IRQ7 est généralement utilisée pour LPT1, IRQ5 pour LPT2. De nombreuses applications "de bureau" n'utilisent pas les interruptions d'imprimante, et cette ressource PC rare peut être épargnée. Cependant, lors de l'utilisation des modes de vitesse ECP (Fast Centronics), l'opération d'interruption peut augmenter considérablement les performances et réduire la charge du processeur.

Dans le même temps, le mode ECP ne peut pas être utilisé avec des appareils nécessitant des délais serrés (programmateurs et interfaces JTAG).

En conclusion, un peu de terminologie:

. PSP(Port parallèle standard - port parallèle standard). Souvent, pour faciliter la compréhension, dans le BIOS, "e" est désigné par le terme " Normal".
. PPE(Port parallèle amélioré - port parallèle étendu) - option d'interface bidirectionnelle à haut débit. Le but de certains signaux a été modifié, la possibilité d'adresser plusieurs dispositifs logiques et une entrée de données 8 bits a été introduite, un tampon FIFO matériel de 16 octets a été introduit. Le taux de change maximum est de 2 Mb/s.
. ECP(Enhanced Capability Port) est une version intelligente d'EPP. La possibilité de diviser les informations transmises en commandes et données, la prise en charge du DMA et la compression des données transmises à l'aide de la méthode RLE (Run-Length Encoding - codage de séries répétées) ont été introduites.

TPL EEE 1284 (English Line Print Terminal) est une norme internationale pour une interface parallèle permettant de connecter des périphériques d'un ordinateur personnel. Le nom LPT est dérivé du nom appareil standard imprimante LPT1 (Line Printer Terminal ou Line Printer) dans les systèmes d'exploitation de la famille MS-DOS.

Standard IEEE 1284définit une variante de port bidirectionnel qui permet la transmission et la réception simultanées de bits de données.Cette norme est basée sur l'interface Centronics et ses versions étendues (ECP, EPP). Norme IEEE 1284 avec était le résultat d'une longue lutte pour assurer la compatibilité. Standard comprend une description formelle de tous les modes de fonctionnement du port LPT. Avant l'adoption de cette norme, il n'existait aucun document officiel qui, s'il était suivi, pouvait compter sur travail correct appareils dans toutes les configurations possibles.

Fondamentalement, le port LPT est utilisé pour connecter une imprimante, un scanner et d'autres périphériques externes à un ordinateur. Également port LPT souvent utilisé pour connecter des périphériques de stockage externes.Il permet d'organiser la communication entre deux ordinateurs, de connecter tout appareil de télésignalisation et/ou de télécontrôle.

La norme IEEE-1284 n'est pas en cours de développement pour le moment. La standardisation finale du port parallèle a coïncidé avec le début de la mise en œuvre interface USB, qui vous permet également de connecter un MFP et offre plus haute vitesse l'impression et le fonctionnement fiable de l'imprimante. Une autre alternative à l'interface parallèle est l'interface réseau Ethernet.

Histoire

Initialement, le port LPT était physiquement absent sur la carte mère et était implémenté par une carte d'extension supplémentaire insérée dans l'un des connecteurs d'extension ISA de la carte mère. Le port parallèle était généralement utilisé - pour une imprimante ou un scanner, pour lesquels le transfert d'une grande quantité de données n'était pas urgent. Plus tard, la prise en charge du port parallèle a été intégrée dans les chipsets qui implémentent la logique de la carte mère.

Port parallèle Centronics - Un port utilisé depuis 1981 dans Ordinateur personnel d'IBM pour connecter des périphériques d'impression, développé par Centronics Data Computer Corporation. Initialement, ce port a été conçu pour le transfert de données simplex (unidirectionnel) uniquement, car il était supposé que le port Centronics ne devait être utilisé qu'avec une imprimante. Par la suite, différentes sociétés ont développé des extensions d'interface duplex (Byte Mode, EPP, ECP). Ensuite, la norme internationale IEEE 1284 a été adoptée, décrivant comment interface de base Centronics et toutes ses extensions.

informations générales

La norme IBM définit 3 ports d'E/S parallèles, qui sont fournis dans le BIOS du PC et dans toutes les versions de DOS. Dans l'espace d'adressage de l'ordinateur, les adresses de base de ces ports sont réservées : 3BCh, 378h, 278h.

Sur les ordinateurs compatibles IBM, les ports parallèles se voient attribuer des noms logiques spéciaux pris en charge par le système : LPT1, LPT2, LPT3. Ces noms logiques ne doivent pas nécessairement être les mêmes que adresses spécifiées Ports d'E/S. Au démarrage, le système analyse la présence de ports parallèles à chacune des trois adresses de base. Les ports sont toujours recherchés dans l'ordre suivant : 03BCh, 0378h, 0278h. Le premier port parallèle trouvé se voit attribuer le nom logique LPT1, le second - LPT2, le troisième - LPT3. Suite à la mise en œuvre de ce schéma de nommage, le système aura toujours un port LPT1, quelle que soit l'adresse de port d'E/S qui lui est attribuée, à condition que l'ordinateur dispose physiquement de ce port parallèle.

biographie

Les adresses de port attribuées à chaque emplacement LPTx peuvent être déterminées en lisant la zone de données du BIOS à l'adresse 0000:0408.

Port parallèle intégré - Cette option définit l'adresse d'E/S et le numéro d'interruption pour le port LPT parallèle. Cette option dépend de Versions du BIOS, spécifie soit l'adresse et l'interruption utilisées par le port parallèle (LPT), soit uniquement l'adresse (l'interruption est définie par une option distincte située à proximité).

Valeurs des options :

378H / IRQ7 - adresse 378H et interruption IRQ7 ;

278H / IRQ5 - adresse 278H et interruption IRQ5 ;

3BCH/IRQ7 – adresse 3BCH et interruption IRQ7 ;

Auto - détection automatique de l'adresse d'E / S et du numéro d'interruption ;

Désactivé - désactive le port LPT.

Mode port parallèle- Cette option définit le mode de fonctionnement du port parallèle LPT.

Exemple de page de paramètres Phoenix - Bios des récompenses

Valeurs des options :

Normal ou SPP - le plus simple unidirectionnel ou standard (port parallèle standard);

Bi-Dir, Bi-Directionnel ou BPP - bi-directionnel (Bi-Directionnel);

EPP - port parallèle amélioré (Enhanced Parallel Port);

ECP - Port de capacités améliorées ;

ECP + EPP - prise en charge de deux modes - Port de capacités améliorées et port parallèle amélioré.

Le meilleur choix est de sélectionner "Enhanced Capabilities Port - ECP", qui fournira vitesse de pointe communication entre un ordinateur et un périphérique.

Si l'équipement connecté à ce port parallèle du PC est instable, vous pouvez réduire progressivement le mode utilisé jusqu'au mode standard. Dans certains cas, la configuration de modes bidirectionnels (bidirectionnels) ou combinés (port parallèle amélioré et port de capacités améliorées) aide.

ECP DMA Select- Dans le cas où le port parallèle fonctionne comme un port haut débit avec des capacités ECP améliorées (Port de capacités améliorées) ou ECP+EPP ( Port de capacités améliorées et port parallèle amélioré) , il doit allouer un canal d'accès direct à la mémoire (DMA). La valeur par défaut est le canal numéro 3.

Propriétés système - Matériel - Gestionnaire de périphériques - Ports (Com & LPT) - Port LPT - Ressources

Note:À Versions Windows qui n'utilisent pas Noyau Windows NT (comme DOS et certains autres systèmes d'exploitation), les programmes peuvent accéder au port parallèle en utilisant les routines outportb() et inportb(). Dans les blocs opératoires Systèmes Windows NT et Unix (NetBSD, FreeBSD, Solaris, 386BSD) le mécanisme de sécurité intégré au processeur 80386 est activé et l'accès au port parallèle est refusé sauf indication contraire bon pilote. Cette restriction améliore la sécurité et facilite la résolution des conflits lors de l'accès à l'appareil.

Mode de fonctionnement des ports

La norme permet d'utiliser l'interface dans plusieurs modes :

  • PSP(Port parallèle standard) - port unidirectionnel, entièrement compatible avec l'interface Centronics.
  • Mode Grignotage- permet d'organiser des échanges de données bidirectionnels en mode SPP en utilisant des lignes de contrôle (4 bits) pour transférer des données d'un périphérique vers un contrôleur. Historiquement, c'était le seul moyen d'utiliser Centronics pour une communication bidirectionnelle.
  • Mode octet- mode d'échange de données bidirectionnel rarement utilisé. Utilisé dans certains contrôleurs plus anciens avant l'adoption de la norme IEEE 1284.
  • PPE(Enhanced Parallel Port) - développé par par Intel, Xircom et Zenith Data Systems - port bidirectionnel, jusqu'à 2 Mo/s de débit de données (1991)
  • RSE(Extended Capabilities Port) - développé par Hewlett-Packard et Microsoft - en outre, des fonctionnalités telles que la présence d'une compression matérielle des données, la présence d'un tampon et la possibilité de travailler en mode DMA sont apparues.

Brochage LPT DB25F

Brochage LPT Centronics (CN36)

Émulation de port LPT (IEEE 1284) sous OC Windows

#1: Utilisation d'une carte d'extension compatible PCI pour un ordinateur personnel.

Exemple de carte d'extension PCIe avec port LPT EPP

PCI(Eng. Peripheral Component Interconnect) - un bus d'entrée / sortie pour connecter des périphériques à la carte mère de l'ordinateur.

Propriétés système - Matériel - Gestionnaire de périphériques - Ports (Com & LPT) - Port PCI LPT - Ressources

Note: Le plus souvent, lors de l'installation d'une carte PCI LPT, les adresses d'E / S seront différentes des adresses standard / de base, de sorte que presque tous les programmeurs et les clés LPT ne fonctionneront pas ou ne fonctionneront pas correctement.

L'adresse d'E/S réelle dépend du système d'exploitation et sera choisie au hasard. L'adresse d'E/S ne sera pas modifiée à moins que la carte PCI ne soit déplacée vers un autre emplacement PCI.

Les cartes PCI IEEE1284 à 1 et 2 ports sont disponibles dans le commerce.

À description technique aux cartes d'extension PCI avec interface LPT, la possibilité d'utiliser l'espace d'adressage standard pour les E / S (entrée / sortie) est indiquée, cependant, la possibilité de définir des ressources d'E / S est déterminée par le type de système d'exploitation utilisé.

Dans les systèmes d'exploitation MS Windows 95/98/ME, DOS, il est possible de définir des paramètres correspondant aux ports ISA LPT standard. Cb Dans les systèmes d'exploitation plus modernes (par exemple Windows 2000/XP/Vista), l'allocation des ressources d'E/S se produit sans intervention de l'utilisateur ou de l'administrateur.Dans certains cas, cela peut entraîner l'impossibilité pour le contrôleur de fonctionner dans certains modes et dépend en grande partie de la configuration matérielle et du type de système d'exploitation utilisé.

Le port d'interface LPT (d'autres noms sont parallèle ou port d'imprimante) est utilisé dans les ordinateurs personnels pour connecter divers périphériques. En pratique, avec son aide, les imprimantes étaient le plus souvent entretenues. Le domaine d'application central de l'interface se reflète directement dans son nom anglais : l'abréviation LPT est dérivée de Line Print Terminal.

Après l'avènement de l'interface USB, elle a rapidement commencé à perdre de sa popularité et est désormais rarement utilisée aux fins prévues.

Exécution du port LPT

Le port LPT est réalisé en parallèle sur la base de l'interface Centronics et est physiquement réalisé sous la forme d'un connecteur DB25 à double rangée à 25 broches. La partie câble est réalisée selon le schéma de prise, respectivement, la prise forme la partie instrumentale de l'interface.

Connecteur photo LPT sur la carte mère

Il y a 13 contacts dans la rangée du bas, tandis que les 12 autres sont dans la rangée du haut.

La bonne polarité de la connexion à l'état monté du connecteur est assurée par l'utilisation d'un verrouillage mécanique assuré par une jupe métallique trapézoïdale rigide montée sur l'embase. Cet élément constructif assume en outre les fonctions d'un écran circulaire externe.

En raison de la masse importante du câble, la fiche du cordon de raccordement à l'état assemblé du connecteur est en outre fixée à la prise avec deux vis imperdables. Cela vous permet d'atteindre le niveau de fiabilité opérationnelle souhaité.

Schéma de câblage de brochage

Brochage port lpt, malgré le grand nombre de contacts du connecteur d'interface, il s'avère assez simple et est indiqué dans le tableau.

Un nombre suffisamment grand de signaux de service et de service est dû à la nécessité de contrôler le fonctionnement de l'imprimante et de prendre en charge son interaction avec un ordinateur. Cela garantit uniquement un transfert de données unidirectionnel.

En raison du comparatif distance courte compris entre contacts individuels connecteur après avoir soudé les fils, ils sont en outre isolés avec de courtes longueurs de cambric, serrés ou avec un tube thermorétractable.

En tant que câble, des paires torsadées ou des paires torsadées protégées par des écrans individuels peuvent être utilisées. L'utilisation d'un câble plat est acceptable. La longueur totale du cordon ne doit pas dépasser 3 m.

Provoquera un tel intérêt parmi les programmeurs et les ingénieurs en électronique, car. J'ai reçu beaucoup de lettres avec des questions et je continue de les recevoir à ce jour, même si cela fait presque trois ans que l'article a été écrit. De plus, dans le premier article, un certain nombre de inexactitudes. Tout cela m'a incité à écrire un article plus détaillé sur ce sujet, dans lequel je vais essayer de répondre à la plupart des questions des chers lecteurs et de corriger les inexactitudes qui ont été faites dans le premier article. Que les lecteurs du premier article ne s'offusquent pas de moi, mais nous allons à nouveau examiner en détail chaque contact et chaque partie de notre port LPT. Dans la première partie de l'article, la théorie sera considérée, dans la seconde et les suivantes (le cas échéant), nous considérerons appareils électroniques, qui peut être "récupéré" sur ce port.

Dans le texte, vous rencontrerez l'abréviation généralement acceptée pour écrire des nombres. Par example, 1010 2 - deux en indice indique que le nombre5 représenté en binaire,124 10 - dix en indice, indique que le nombre124 décimal. C'est comme ça... au cas où

Comme l'a montré la pratique, tous les programmes correctement écrits et complétés par les bibliothèques appropriées (vbio32.dll, inpout32.dll, dlportio.dll, etc.) fonctionnent sur la plupart des ordinateurs avec systèmes d'exploitation Familles de fenêtres. J'ai testé tous mes programmes (Visual Basic5.0, 6.0) sur Win95, 98, Me, 2000, XP HE, XP Prof et même DOS6.22 (QBasic) - tout fonctionne bien. Sous DOS, aucune bibliothèque n'est nécessaire, tout y fonctionne de toute façon. Faites immédiatement une réservation pour vbio32.dll et inpout32.dll NE FONCTIONNERA PAS SOUSWin2000, mais ils fonctionneront assez calmement sous Win95, 98, Me.

Au fait, vous pouvez prendre n'importe laquelle de ces bibliothèques. Je voulais essayer dlportio.dll et dans ce moment Je travaille avec cette bibliothèque. Et enfin, avant d'écrire des programmes, vous devez déclarer correctement la bibliothèque que vous utilisez.

Pour input32.dll

Fonction de déclaration privée Inp Lib "inpout32.dll" Alias ​​​​"Inp32" (ByVal PortAddress As Integer) As Integer

Private Declare Sub Out Lib "inpout32.dll" Alias ​​​​"Out32" (ByVal PortAddress As Integer, ByVal Value As Integer)

Pour dlportio.dll

Fonction de déclaration privée DlPortReadPortUchar Lib "dlportio.dll" (ByVal Port As Long) As Byte

Private Declare Sub DlPortWritePortUchar Lib "dlportio.dll" (ByVal Port As Long, ByVal Value As Byte)

Quelle est la différence Privéà partir de Public Je n'écrirai pas.

Le port parallèle pour communiquer avec une imprimante (ou un autre périphérique) a une adresse de base de &H378 (LPT1), &H278 (LPT2), &H3BC (LPT3). Dans cet article, nous ne considérerons que LPT1. L'espace d'adressage de ce port se situe dans la plage &H378-&H37F.

· L'adresse & H378 appelé basique et sert à écrire (lire, mais plus à ce sujet plus tard) des données sur le port, sur la ligne D0-D7.

· L'adresse & H379 (basique+1) conçu pour lire les bits d'état d'un appareil connecté au port LPT (imprimante, scanner, etc.)

· L'adresse & H37UN (basique+2) permet d'écrire les bits de contrôle du périphérique connecté au port LPT (imprimante, scanner, etc.).

Dans les tableaux ci-dessous, les contacts et signaux de chacune des adresses sont « décodés »

Contacts 18-25 - "masse" (commun, GND, GROUND, etc.)

Pensez à programmer chacune des adresses.

· L'adresse de base &H378 (LPT1) permet d'écrire des données sur le port sur la ligne D0-D7 dans la plage 0 à 255.

Nous écrivons le nombre 69 au port

· L'adresse &H379 est utilisée pour lire les bits d'état.

Lire l'état du port à &H379

Lors de la lecture de l'adresse &H379, rappelez-vous que les trois premiers bits ne sont pas utilisés et ont toujours une valeur log. "1", et le 7ème bit est inversé. En conséquence, si toutes les broches 15, 13, 12, 10, 11 sont mises à la terre, alors lors de la lecture des informations, vous obtiendrez 1 + 2 + 4 sur les trois premiers bits (qui ne sont pas utilisés) et sur le 7ème bit (broche 11- inverse, ce qui signifie que lorsqu'il y a un défaut à la terre, il y aura un log "1") +128 total 135. Il ne faut pas oublier cela. Dans la deuxième partie de l'article, nous nous attarderons plus en détail là-dessus.

Adresse & H37 A est utilisé pour écrire des bits de contrôle.

Nous écrivons le signal -STROBE (bit de contrôle 0)

Pourquoi 10 ? Regardons le tableau.

Les signaux STROBE, AUTO, SELECT IN sont inverses, ce qui signifie que pour obtenir un « 1 » logique en sortie des broches 1, 14, 17 du connecteur, il faut appliquer un « 0 » logique à ces bits, c'est-à-dire Donnez une chose, obtenez le contraire. Le signal INIT est direct (non inverse), donc le "1" logique sur la broche 16 apparaîtra lorsque nous appliquons un "1" logique à ce bit, c'est-à-dire ce qui est donné est ce qui est reçu.

Essayons d'obtenir sur les contacts 1,17 - un niveau bas du signal "0", et sur les contacts 14 et 16 un niveau haut du signal "1", c'est-à-dire à la sortie des contacts 1,14,16,17 il y aura 0 1 1 0 (610).

Sur le bit zéro (-STROBE) nous fournissons "1" (sur la broche 1 sera "0"), sur le premier bit (-AUTO) nous fournissons "0" (sur la broche 14 il y aura "1"), sur le deuxième bit (INIT) nous fournissons " 1" (la broche 1 sera "1") et, enfin, le troisième bit (-SELECT IN) est fourni avec "1" (la broche 17 sera "0"), c'est-à-dire nous avons noté le numéro 10112 à l'adresse & H37A, qui est 1310. Ainsi, pour obtenir 6 à la sortie, vous devez soumettre 13.

Pour plus de commodité, je donne un tableau avec toutes les combinaisons possibles de nombres de 0 à 15

Signal appliqué

Signal reçu

Nombre décimal

(- STROBOSCOPIQUE) 2 0

(-AUTO) 2 1

(INIT) 2 2

(-SELECT IN) 2 3

broche 1

broche 14

broche 16

broche 17

Nombre décimal

Et enfin, la dernière partie de cet article. Si votre ordinateur prend en charge la norme EPP, le quatrième bit à l'adresse & H37UN vous pourrez activer une interruption (pour LPT1, c'est IRQ7) à partir de l'imprimante, ne me demandez pas ce que c'est, je ne sais rien des interruptions de toute façon. Mais le cinquième bit 110101 2 , par exemple, en fournissant le nombre 43 10 , vous mettez le bus D0-D7 sur le mode ACCUEIL Les données. Dans ce cas, tous les digits (contacts 2-9) prennent la valeur logique "1". Pour appliquer un "0" logique au contact souhaité, il faut le fermer par une résistance de 240 - 360 Ohms à la "terre". Ainsi, via le port LPT de l'ordinateur, nous recevons forme standard périphérique avec 12 sorties et 5 entrées, et lorsque le port est réglé sur le mode EPP, nous obtenons 4 sorties et 13 entrées.

ModeSPP (12 sorties et 5 entrées)

ModeEPP (4 entrées et 13 sorties)

Signal

Direction

Signal

Direction

Sortir

Entrée

Sortir

Entrée

Sortir

Entrée

Sortir

Entrée

Sortir

Entrée

Sortir

Entrée

Sortir

Entrée

Sortir

Entrée

Entrée

Entrée

Entrée

Entrée

FIN DU PAPIER

Entrée

FIN DU PAPIER

Entrée

Entrée

Entrée

- OCCUPÉ

Entrée

- OCCUPÉ

Entrée

- STROBOSCOPIQUE

Sortir

Sortir

Sortir

- AUTO

Sortir

Sortir

Sortir

-SÉLECTIONNER DANS

Sortir

-SÉLECTIONNER DANS

Sortir

Fin de la première partie.

Dans la deuxième partie de l'article, nous connecterons divers objets électroniques au port.

Partager