LPT-poort gebruiken. Externe poorten van een personal computer

Zelfs aan het begin van de eerste computers stonden de makers voor de taak om er een verscheidenheid aan apparaten op aan te sluiten. Dit werd vooral relevant toen computers niet langer hele kamers in beslag namen, maar op tafel begonnen te passen, dat wil zeggen dat ze persoonlijk werden. Een computer is immers niet alleen een middel om berekeningen uit te voeren, maar ook een apparaat waarvan de gebruiker veel verschillende functies kan uitvoeren: tekst of foto’s afdrukken, beheren verschillende apparaten, speel films en muziek af, maak verbinding met andere gebruikers van over de hele wereld via computernetwerk. Dit alles wordt mogelijk door externe apparaten op de computer aan te sluiten, die worden gebeld in algemene termen randapparatuur, met behulp van speciale uniforme connectoren, poorten genaamd.

Poorten voor personal computers

Poorten persoonlijke computer(anders worden ze ook wel interfaces genoemd) - dit is het speciale apparaten op het moederbord van de computer, of extra kosten, erop aangesloten, die zijn ontworpen om gegevens over te dragen tussen de computer en externe apparaten(printer, muis, monitor, webcam, enz.). Alle poorten kunnen in 2 worden verdeeld grote groepen:

  • Intern - voor het aansluiten van apparaten in de pc ( harde schijven, videokaarten, uitbreidingskaarten).
  • Extern - voor het aansluiten van externe randapparatuur (scanner, monitor, toetsenbord, camera, flashdrive).

In dit artikel zullen we een van de typen bekijken externe poort, namelijk LPT-poort, het werkingsprincipe, aangesloten apparaten en moderne toepassingen.

Het uiterlijk van een LPT-poort

Aanvankelijk werd de LPT-poort (ook wel genoemd) alleen ontwikkeld voor het aansluiten van printers op een pc, dit komt zelfs tot uiting in de naam - Line Printer Terminal, lijn-voor-lijn printerterminal. Maar later werd deze interface gebruikt voor het aansluiten van andere apparaten: scanners, schijfstations en zelfs computers onderling.

LPT-port is ontwikkeld door Centronics, dat zich in de jaren '70 van de vorige eeuw bezighield met de productie van dot-matrixprinters. Maar na tien jaar begon IBM het te gebruiken om zijn snelle apparaten aan te sluiten. Het kwam op het punt dat er verschillende opties waren van deze interface van verschillende fabrikanten omtrek.

In de originele versie was deze poort unidirectioneel, dat wil zeggen dat hij gegevens slechts in één richting kon verzenden: van de computer naar randapparaat. Maar deze beperking was al snel niet meer geschikt voor gebruikers, omdat apparaten met de mogelijkheid om gegevens in beide richtingen te verzenden massaal op de markt kwamen. Hiervoor diverse fabrikanten boden hun eigen verbeteringen aan - bidirectioneel, ECP, EPP en anderen. Totdat het in 1994 werd aangenomen internationale standaard IEEE 1284.

LPT-poortdiagram

Een LPT-poort wordt parallel genoemd omdat de datatransmissie daardoorheen over meerdere geleiders tegelijk, dat wil zeggen parallel, plaatsvindt. Deze interface heeft een 8-bits databus, een 5-bits signaalbus en een 4-bits statusbus.

Hieronder ziet u een diagram van de LPT-poortpinnen.

Het werkingsprincipe van de LPT-poort

In de eenvoudigste configuratie om het werkingsprincipe te realiseren parallelle interface zouden slechts elf draden voldoende zijn, namelijk: 1 draad naar de carrosserie (aarde), 2 bevestigingsdraden en 8 datadraden. Maar volgens de algemeen aanvaarde IEEE 1284-standaard heeft elk van de acht datatransmissiedraden (2-9) een afzonderlijke aarde.

Tijdens de gegevensoverdracht moeten beide apparaten hun status aan elkaar doorgeven. Dit wordt gerealiseerd met behulp van pin 18 en 35, die worden voorzien van een spanning van 0 V of 5 V.

Langs geleider 1 wordt een speciaal STROBE-signaal verzonden, wat aangeeft dat de computer een databyte op de lijn heeft geïnstalleerd en dat de printer kan beginnen met afdrukken.

Pin 11 verzendt het BUSY-signaal naar de computer, wat aangeeft dat het apparaat een actie uitvoert (bezet) en de informatie verwerkt die zich in de buffer bevindt.

Pinnen 12-14 zenden signalen uit die controlesignalen geven over de status van de printer en conflicten in de hardware.

Via geleider 12 wordt informatie naar de pc verzonden dat er geen papier in de printer zit. De computer reageert hierop door signalen langs de SELECT- en ERROR-lijnen te verzenden en stopt met afdrukken.

Via geleider 13 wordt informatie over de status van de printer naar de computer verzonden - aan en klaar of uit en niet klaar.

Pin 14 stuurt een signaal naar de printer automatische vertaling lijnen.

Contact 31 (16) stuurt een signaal om de printer in te schakelen initiële staat en de databuffer wordt gewist, d.w.z. alle gegevens worden uit het geheugen van de printer gewist.

Pin 32 (15) verzendt alle foutsignalen tijdens de gegevensoverdracht. Signalen die op deze lijn worden verzonden, hebben invloed op alle andere pinnen en kunnen mogelijk stoppen met afdrukken. Een veel voorkomende printerfout is bijvoorbeeld Time Out, die optreedt wanneer de printer bezig is met gegevens van hetzelfde type en via het BUSY-signaal niet naar de pc kan verzenden dat hij niet klaar is om nieuwe gegevens te ontvangen. Na enige tijd wordt de ERROR-regel naar de computer verzonden Tijdfout Uit en er worden geen nieuwe gegevens verzonden. Anders zou er bij afwezigheid van het ERROR-signaal verdere gegevensoverdracht plaatsvinden, wat zou leiden tot het bevriezen van het hele systeem.

Pin 36 (17) verzendt informatie over de bedrijfsgereedheid van de printer, bijvoorbeeld nadat een fout is opgelost.

Bedrijfsmodi LPT-poort

Er zijn verschillende bedieningsmodi van de LPT-poort die de IEEE 1284-standaard toestaat:

  • SPP (Standard Parallel Port) is een unidirectionele poort die perfect samenwerkt met de Centronics-interface.
  • NibbleMode - het gebruik van deze poort is de mogelijkheid om bidirectionele gegevensuitwisseling in SPP-modus te organiseren, waarbij gebruik wordt gemaakt van besturingslijnen (4 bits) om gegevens van een randapparaat naar de controller te verzenden.
  • Byte Mode is een modus voor gegevensuitwisseling in twee richtingen, die vrij zelden wordt gebruikt. Het werd in sommige oudere controllers gebruikt voordat de IEEE 1284-standaard werd aangenomen.
  • EPP (Enhanced Parallel Port) - verschillende bekende bedrijven hebben aan de ontwikkeling van deze poort gewerkt: Intel, Xircom en Zenith Data Systems. In zijn werking is het een bidirectionele poort die gegevens verzendt met snelheden tot 2 MB/sec.
  • ECP (Extended Capabilities Port) - deze versie van de port verscheen als resultaat van het werk van twee bedrijven: HP en Microsoft. Dat heeft hij al gedaan extra functies Zo zijn er bijvoorbeeld de mogelijkheid tot hardwarematige datacompressie, de aanwezigheid van een buffer en de mogelijkheid om in DMA-modus te werken. Het ondersteunt ook bidirectionele gegevensuitwisseling (symmetrisch), waarvan de snelheid kan oplopen tot 2,5 MB/s.

Een LPT-poort instellen

Het opzetten van een LPT-poort gebeurt in twee fasen: voorinstelling poorthardware en huidige schakeling van poortmodi door toepassingssoftware.

De methode en opties voor het configureren van een LPT-poort zijn afhankelijk van de locatie en het type ontwerp. Poorten op uitbreidingskaarten worden meestal geconfigureerd via jumpers op de kaarten zelf, terwijl poorten die zich direct op het moederbord van de computer bevinden, worden geconfigureerd via BIOS-instellingen.

Het rechtstreeks of via het BIOS selecteren van modi leidt op zichzelf niet tot een verhoging van de snelheid van de gegevensuitwisseling tussen de pc en randapparatuur, maar dient om stuurprogrammaselectie mogelijk te maken optimale modus werk. Maar de chauffeurs moderne apparaten stellen daarom zelf automatisch de meest efficiënte werkingsmodi van de parallelle poort in handmatige instelling in de meeste gevallen is dit niet langer nodig.

Soorten LPT-poortimplementaties

Voorheen plaatsten de meeste moederbordfabrikanten LPT-poortcontrollers op hun producten of op het achterpaneel van het bord. Er was nog een locatieoptie. In sommige gevallen was het handig om de controller op het bord zelf te plaatsen: een connector voor het aansluiten van een externe LPT-poortstrip. Maar sinds de komst van snellere interfaces voor gegevensoverdracht zijn er steeds minder moederborden met gesoldeerde LPT-poorten. Tegenwoordig heeft zelfs niet elke fabrikant dergelijke boards in hun assortiment. En dan zijn uitbreidingskaarten aangesloten op meer moderne interfaces:

  • PCI - LPT-poort. Een adapter tussen een LPT-poort en een modernere PCI-connector.
  • PCI2 - LPT-poort (PCI-Ex. 2.0). Adapter tussen LPT-poort en PCI-Ex.2.0-connector
  • USB - LPT-poort. Een adapter tussen een LTP-poort en een moderne versie van de veelgebruikte USB-connector.

Modern gebruik van LPT-poort

Dankzij de parallelle gegevensoverdrachtmogelijkheden van een dergelijke poort heeft deze zich in de jaren '70 en '80 ontwikkeld tot een van de snelste computerinterfaces. Daarom werd het zelfs gebruikt om 2 computers met elkaar te verbinden. Maar deze zelfde eigenschap legt ook een beperking op maximale lengte kabel als gevolg van interferentie die optreedt in aangrenzende geleiders. De lengte mag niet groter zijn dan 5 m, anders zal de signaalvervorming groter zijn dan wat toegestaan ​​is voor correcte dataherkenning.

Met de komst van snellere interfaces is de relevantie van de LPT-poort op niets uitgelopen. Het kreeg een tweede wind door radioamateurs die het gebruiken om te controleren samengestelde circuits(verlichting in huis, lichte muziek en andere apparaten).

Op Habré over het aansturen van een lamp via internet kwam het idee naar voren om de verlichting thuis vanaf een computer te bedienen, en aangezien ik al computerbediening heb geconfigureerd met mobiele telefoon Dit betekent dat het licht vanaf dezelfde telefoon kan worden bediend. Nadat hij het artikel aan een van mijn collega's had laten zien, zei hij dat dit precies was wat hij nodig had. Omdat hij vaak in slaap valt terwijl hij films op de computer kijkt. Enige tijd na het einde van de film valt ook de computer in slaap en schakelt de monitor uit, maar het licht in de kamer blijft branden. Die. er werd besloten dat dit ding nuttig was, en ik begon informatie en details voor dit wonder te verzamelen.
De rest van de informatie staat onder habracut (let op, er zijn veel foto's - verkeer).

Apparaatdiagram

Het originele schema is overgenomen van een van de schema's die op internet te vinden zijn en zag er als volgt uit:

Maar alleen met een kleine verandering: er werd een weerstand van 390 Ohm toegevoegd tussen de 1e pin van de 4N25 optocoupler en de 2e LPT-pin, en er werd ook een LED toegevoegd om het inschakelen aan te geven. De schakeling werd in testmodus gemonteerd, d.w.z. indien nodig eenvoudig met draden verbinden en testen. In deze versie zette ze eenvoudigweg een oude Sovjet-zaklamp aan en uit.
Er werd besloten dat als we de bediening zouden doen, dat dan niet voor één apparaat, maar voor minimaal 4 apparaten (gebaseerd op: één lamp op tafel, een kroonluchter met twee schakelaars, een reserve stopcontact). Op in dit stadium het werd noodzakelijk om te bouwen compleet schema apparaat begon de selectie van verschillende programma's.
Geïnstalleerd:

  1. KiCAD
  2. Adelaar
Nadat ik ze allemaal had bekeken, koos ik voor Eagle, omdat de bibliotheek “soortgelijke” onderdelen had. Dit is wat er daarin gebeurde:

Het diagram gebruikt de DB9-poort, d.w.z. een gewone COM-poort, dit werd gedaan om zowel ruimte op het bord als de connectoren zelf te besparen (ik had COM-poorten), en aangezien we slechts 5 geleiders zullen gebruiken, zal dit genoeg zijn voor ons met een reserve maak ook een adapter van DB25 (LPT) naar DB9 (COM), in mijn geval gaat dat als volgt:
LPT 2-9 pin = COM 1-8 pin zijn datacontrolepinnen;
LPT 18-25 pin (vaak zijn ze met elkaar verbonden) = COM 9 pin - dit is onze aarde.
Wordt ook gebruikt in het schema extra eten bij 12V om het relais van stroom te voorzien, zal het volgens het plan een eenvoudige Chinese oplader zijn of misschien een 9V Krona (één relais werkt prima, je moet er 4 tegelijk controleren). Aparte maaltijden en galvanische isolatie Er wordt gebruik gemaakt van een optocoupler om de computerpoort te beveiligen. Als je wilt, kun je hem uiteraard van stroom voorzien via een 12V-computervoeding, maar dat doet iedereen zelf en op eigen risico.

Benodigde onderdelen om het apparaat te maken
  1. COM-poort - 1 stuk
  2. stroomconnector - 1 st.
  3. groene LED - 4 st
  4. optocoupler 4n25 - 4 st
  5. stoel voor een optocoupler (ik had er maar één voor 8 poten) - 4 st.
  6. weerstand 390 Ohm - 4 st.
  7. weerstand 4,7 kOhm - 4 st.
  8. transistor KT815G - 4 st.
  9. relais HJR-3FF-S-Z - 4 st.
  10. klemmen voor 3 contacten - 4 st.
  11. folie printplaat

Het PCB-schema voorbereiden

Ik probeer Eagle te gebruiken ter voorbereiding printplaat Ik besefte dat het een beetje ingewikkeld zou zijn en besloot een eenvoudiger optie te vinden. Deze optie was het sprint layout 5 programma, ook al is het gemaakt voor Windows, maar het draait zonder problemen in wine onder Linux. De interface van het programma is intuïtief, in het Russisch en het programma heeft genoeg duidelijke hulp(hulp). Daarom alles verdere acties De PCB-ontwikkeling werd uitgevoerd in sprintlay-out 5 (hierna SL5 genoemd).
Hoewel veel mensen gebruiken dit programma om boards voor mijn apparaten te ontwikkelen, bevatte het niet de onderdelen die ik nodig had (zelfs niet in de stapel gedownloade macrocollecties). Daarom moesten we eerst de ontbrekende onderdelen maken:
  1. COM-poort (degene die niet dezelfde was als de mijne, volgens de montagegaten)
  2. stopcontact
  3. drietandige klem
  4. relais HJR-3FF-S-Z
Type van deze onderdelen:

Na het toevoegen van de benodigde onderdelen begon het daadwerkelijke ontwerp van de printplaat. Er waren verschillende pogingen nodig, het waren er ongeveer vijf. Elke versie van het bord werd op karton gedrukt, er werden gaten in geponst en er werden onderdelen in gestoken. Eigenlijk kwam men erachter dat mijn COM-poort niet overeenkomt met die in SL5. Ook opgedoken klein foutje in het relaiscircuit - in werkelijkheid was het relaislichaam 2-3 mm verschoven. Uiteraard zijn alle fouten gecorrigeerd.
Op de eerste gedrukte versie bleek dat dit nog niet het geval was juiste aansluiting transistor, twee contacten waren verwisseld.
Na alle correcties en aanpassingen zag het resulterende bord er als volgt uit:

SL5 heeft een Photo View-functie om het bord te bekijken, zo ziet het eruit:

De definitieve versie van het bord zal wat meer aanpassingen aan de tracks hebben, maar verder ziet het er hetzelfde uit.

SL5 heeft dat ook handige optie Bij het printen van een bord kun je onnodige lagen verbergen en de printkleur van elke laag selecteren, wat erg handig is.

Het voorbereiden van de printplaat

Er werd besloten om het bord te maken met behulp van de LUT-methode (laser-ijzertechnologie). Vervolgens staat het hele proces op de foto.

Knip een stuk PCB uit op de gewenste maat.

We nemen het fijnste schuurpapier en maken het koperoppervlak zorgvuldig schoon.

Na het reinigen van het oppervlak moet het worden gewassen en ontvet. Je kunt het wassen met water en ontvetten met aceton (in mijn geval was het oplosmiddel 646).
Vervolgens printen we verder laserprinter op gecoat papier ons bord, en niet te vergeten de printer op de dikste afdruk in te stellen (zonder toner te besparen). Deze optie bleek een beetje mislukt, omdat de toner uitliep, maar een nieuwe poging was precies goed.

Nu moet je de tekening van papier naar textoliet overbrengen. Om dit te doen, knippen we het ontwerp uit en passen het op de textoliet toe, proberen het indien nodig uit te lijnen en verwarmen het vervolgens met een strijkijzer. Het is noodzakelijk om het hele oppervlak grondig te verwarmen, zodat de toner smelt en aan het koperoppervlak blijft plakken. Daarna laten we het bord een beetje afkoelen en gaan we het onder stromend water nat maken. Wanneer het papier nat genoeg wordt, moet het van het bord worden gescheiden. Alleen de vastzittende toner blijft op het bord achter. Het ziet er zo uit:

Vervolgens moet u een oplossing voor het etsen voorbereiden. Ik heb hiervoor ijzerchloride gebruikt. Op de pot met ijzerchloride staat geschreven dat de oplossing 1 op 3 moet worden gemaakt. Ik ben hier een beetje van afgeweken en heb 60 g ijzerchloride per 240 g water gemaakt, d.w.z. Het bleek 1 op 4, ondanks dat gebeurde het etsen van het bord normaal, alleen iets langzamer. Houd er rekening mee dat het proces van het oplossen van droog ijzerchloride in water warmte produceert, dus je moet het in kleine porties in het water gieten en roeren. Voor het etsen is het uiteraard noodzakelijk om niet-metalen containers te gebruiken; in mijn geval was het een plastic container (zoals een haring). Ik heb deze oplossing:

Voordat ik het bord in de oplossing liet zakken, gebruikte ik tape om het vast te lijmen achterkant vislijn om het verwijderen en omdraaien van het bord gemakkelijker te maken. Als de oplossing op uw handen terechtkomt, moet u deze snel afwassen met zeep (zeep neutraliseert het), maar er kunnen nog steeds vlekken achterblijven, het hangt allemaal af van de specifieke omstandigheden. Vlekken uit kleding worden helemaal niet verwijderd, maar ik had het geluk dit niet zelf te testen. De plaat moet met de koperen kant naar beneden in de oplossing worden ondergedompeld en niet helemaal plat, maar onder een hoek. Van tijd tot tijd is het raadzaam om het bord schoon te maken van mijnbouw, omdat dit het verdere etsen belemmert. Dit kan gedaan worden met wattenstaafjes.

Het hele etsproces kostte me 45 minuten, 40 minuten zou genoeg zijn geweest, maar ik was gewoon met nog één ding bezig.
Na het etsen wassen we het bord met zeep, scheuren we de tape af met een vislijn en krijgen:

Aandacht! Giet de ijzerchloride-oplossing niet in de gootsteen (riool) - dit kan de metalen delen van de gootsteen beschadigen en over het algemeen kan de oplossing nog steeds nuttig zijn.
Vervolgens moeten we de toner afwassen, dit gebeurt met succes met hetzelfde oplosmiddel 646 dat werd gebruikt voor het ontvetten ( lang contact oplosmiddel met de huid kan deze beschadigen).

De volgende stap is het boren van de gaten. Ik had aanvankelijk gaten van 1 mm en 1,5 mm op het bord, omdat ik geen dunnere boren kon vinden. Ook was het in onze stad niet mogelijk om een ​​spantang te vinden om deze aan een elektromotor te bevestigen, dus werd alles met een grote boormachine gedaan.

Het eerste apparaat is gearriveerd

De eerste keer nam ik maar twee oefeningen mee, en bij het gebruik van zo'n boor bleek dit niet genoeg. Eén boor brak en de andere was verbogen. Het enige wat ik op de eerste dag heb kunnen boren:

De volgende dag kocht ik vijf boren. En ze waren net genoeg, want als ze niet breken (trouwens, slechts één van de vijf brak), worden ze saai, en als ze met saaie worden geboord, verslechteren de sporen en begint het koper af te pellen. Nadat we het bord volledig hebben geboord, krijgen we:

Na het boren is het noodzakelijk om de plaat te vertinnen. Hiervoor heb ik gebruikt oude manier- soldeerbout, TAGS vloeimiddel en tin. Ik wilde het proberen met Rose-legering, maar het is niet te vinden in onze stad.

Na het vertinnen krijgen we het volgende resultaat:

Vervolgens moet je het bord wassen om vloeimiddelresten te verwijderen. Omdat TAGS waterreinigbaar is, kan dit met water of alcohol worden gedaan. Ik deed iets tussendoor: ik waste het met oude wodka en veegde het af met wattenstaafjes. Na al deze stappen is ons bord klaar.

Installatie van onderdelen

Om de juistheid van het bord te controleren, monteer ik in eerste instantie slechts één (van de vier) rij onderdelen, je weet nooit waar een fout is geslopen.

Na het installeren van de onderdelen gaan we het apparaat via LPT met de computer verbinden; hiervoor wordt een adapter van DB25(LPT) naar DB9(COM) in de volgende vorm gesoldeerd:

  • 2-pins DB25 naar 1-pins DB9
  • 3-pins DB25 naar 2-pins DB9
  • 4-pins DB25 naar 3-pins DB9
  • 5-pins DB25 naar 4-pins DB9
  • 6-pins DB25 naar 5-pins DB9
  • 7-pins DB25 naar 6-pins DB9
  • 8-pins DB25 naar 7-pins DB9
  • 21-pins DB25 (elk van 18 tot 25 is mogelijk) naar 9-pins DB9
Omdat de gebruikte draad gewoon was gedraaid paar, dan ontbrak er één draad, maar voor dit apparaat zijn slechts vijf draden voldoende, dus deze optie past. Onze geschakelde belasting is een eenvoudige Sovjet-zaklamp. Nou ja, als voeding - universeel Chinees blok voeding (4 connectoren en voeding van 3 tot 12 V). Hier is alles gemonteerd:

Maar het apparaat werkt al:

Dit eindigde nog een avond en de installatie van de resterende onderdelen werd de volgende dag uitgesteld.

En hier is het volledig geassembleerde apparaat:

Nou ja, een korte video over hoe het werkt (de kwaliteit is niet erg goed, er was geen manier om het goed te filmen)

Dat is alles, het enige dat overblijft is het vinden van een normaal hoesje voor het apparaat en het in gebruik nemen.

Softwaregedeelte

Om de LPT-poort te besturen heb je natuurlijk een soort software nodig, maar aangezien ik thuis Linux heb, werd besloten om gewoon zelf een eenvoudig programma te schrijven, het vervolgens toe te voegen en indien nodig aan te passen. Ze zag er ongeveer zo uit:
#erbij betrekken
#erbij betrekken
#erbij betrekken
#erbij betrekken
#define BASIS 0x378
#define TIJD 100000
int hoofd()
{
int x = 0x0F;
int y = 0x00;
als (ioperm(BASIS, 1, 1))
{
perror("ioperm()");
uitgang(77);
}
uitb(x,BASIS);
retour 0;
}

Dit programma verzendt 0x0F = 00001111 naar de LPT-poort, d.w.z. levert 1 aan pin 2-5 (Data0-Data3), en dit is onze stuurspanning tussen pin 2-5 en aarde (pin 18-25), dus alle vier de relais worden ingeschakeld. Het programma voor het verzenden van 0x00 naar een poort voor afsluiten werkt op precies dezelfde manier, het verzendt alleen y in plaats van x - outb (y, BASE). U kunt ook de poortstatus aflezen:
#define BASEPOORT 0x378 /* lp1 */
...
printf("status: %d\n", inb(BASEPOORT));
...

Het enige voorbehoud van dit programma is dat het als root moet worden uitgevoerd, aangezien voor een eenvoudige gebruiker ioperm-functie is niet beschikbaar. Ik denk dat we je niet hoeven te vertellen hoe je een dergelijk probleem kunt oplossen; iedereen zal de optie kiezen die het beste bij hem of haar past.

Vervolgens werd het programma aangepast door parameters door te geven opdrachtregel het was mogelijk om aan te geven met welk apparaat en wat te doen.
Uitvoer van "sw --help":
Programma voor het aansturen van relais via LPT-poort.
Een programma kan één of twee parameters hebben.
Parameterformaat: sw [apparaatnummer] [actie]
apparaatnummer - van 1 tot 8
actie - "aan", "uit", "st" - aan, uit, status
Voorbeeld: "sw 2 on" om het tweede apparaat in te schakelen of "sw --help" om hulp weer te geven

PS, als iemand het nodig heeft, kan ik het schemabestand van het bord in sl5 en de broncode van het besturingsprogramma ergens posten.

Een van de oudste computerpoorten is de LPT-poort of parallelle poort. En hoewel de LPT-poort nu niet op elk moederbord te zien is, zijn lezers misschien wel geïnteresseerd in wat het is.

Laten we eerst eens kijken naar de poortnaam. Misschien weet niet iedereen waar de afkorting LPT voor staat. LPT is eigenlijk een afkorting voor Line Print Terminal. Het wordt dus duidelijk dat de LPT-poort in de eerste plaats bedoeld was voor het aansluiten van printers. Daarom heeft de LPT-poort een andere naam: printerpoort. Hoewel theoretisch andere apparaten op LPT kunnen worden aangesloten.

De LPT-poort heeft een lange geschiedenis. Het is ontwikkeld door Centronics (daarom deze haven vaak ook wel een haven van Centronics genoemd), die produceerde dot-matrixprinters zelfs vóór het tijdperk van de personal computers, begin jaren zeventig. En begin jaren tachtig begon IBM de LPT-poort te gebruiken in zijn computers en werd deze enige tijd standaard poort voor het aansluiten van (destijds) hogesnelheidsapparaten.

Uiterlijk van de parallelle poort aan de achterkant van de computer

De LPT-interface bestaat in verschillende edities. In de originele versie was de LPT-poort unidirectioneel, dat wil zeggen dat hij gegevens slechts in één richting kon verzenden: naar een randapparaat. Deze situatie was natuurlijk niet geschikt voor gebruikers, omdat er printers waren die gegevensoverdracht in beide richtingen vereisten. Daarom werd de LPT-interface vervolgens verschillende keren verbeterd totdat de internationale standaard IEEE 1284 werd ontwikkeld. In overeenstemming met deze standaard ondersteunde de parallelle poortinterface verschillende bedrijfsmodi en was ook compatibel met oudere standaarden. Bovendien ondersteunde de interface in de definitieve versie relatief hoge gegevensoverdrachtsnelheden - tot 5 Mb/s.

Hoe de parallelle poort werkt

De LPT-poort wordt parallel genoemd omdat de erop aangesloten kabel gegevens parallel verzendt, dat wil zeggen gelijktijdig langs meerdere geleiders. Deze eigenschap onderscheidt een parallelle poort van andere computerpoorten: seriële poort COM.

In de Centronics-kabel zitten 8 geleiders die de data zelf doorgeven. Daarnaast bevat de kabel meerdere leidingen waarlangs stuursignalen worden verzonden.

Hoewel de parallelle poort grotendeels gebruikt om printers aan te sluiten, maar er waren ook andere toepassingen. Ten eerste kunt u via de LPT-poort twee computers rechtstreeks met elkaar verbinden via een speciale Interlink-kabel. Vóór het wijdverbreide gebruik van Ethernet-netwerkkaarten bestond er een soortgelijke verbinding, hoewel deze de gebruiker niet voorzag hogere snelheid gegevensoverdracht was echter vaak de enige manier twee computers aansluiten. Er zijn ook elektronische sleutels, ontworpen voor aansluiting op de LPT-poort.

Kabel voor gegevensoverdracht tussen computers - Interlink

Net als bij veel andere apparaten op het moederbord kunnen de bedrijfsmodi voor parallelle poorten vaak worden geconfigureerd via BIOS-instellingen. In de regel worden hiervoor de volgende gebruikt BIOS-opties, zoals parallelle poort, parallelle poort IRQ, parallelle poort DMA, enz.

Moederbord parallelle poortconnector en Centronics-kabel

De LPT-poortconnector bevindt zich meestal direct op het moederbord, zij het tot halverwege de jaren negentig. het was meestal aanwezig op een zogenaamde multicard die in een uitbreidingsslot werd geplaatst, waarop zich ook andere poorten van de computer bevonden. De poortuitgang is een vrouwelijke 25-pins connector, een zogenaamde DB25-connector.

ISA multicard met LPT(DB25 - “moeder”) en game poort aan boord.

Wordt gebruikt om verbinding te maken met een printer speciale kabel– Centronics-kabel. Het ene uiteinde (stekker) van de Centronics-kabel wordt aangesloten op de poort, het andere uiteinde (ook plug) wordt aangesloten op een speciale connector op de printer. De laatste connector heeft 36 pinnen. Het bijzondere aan de Centronics-kabel is daarom dat deze aan beide zijden verschillende connectoren heeft.

Uiterlijk van de Centronics-kabel.

Hoewel de moederbordkabelconnector vaak de Centronics-connector wordt genoemd, is de Centronics-connector strikt genomen slechts een 36-pins connector voor aansluiting op de printer, en niet op het moederbord. De kabelconnector voor aansluiting op de poort heet een Amfenolstacker-connector, naar de naam van de Amerikaanse connectorfabrikant Amfenol die deze heeft ontwikkeld.

Kenmerken van de parallelle poort

Vanwege het feit dat de LPT-poort parallelle gegevensoverdracht ondersteunt, werd deze poort bij de eerste pc's als een van de snelste computerpoorten beschouwd. Door gegevens over meerdere lijnen te verzenden, komt de LPT-interface qua architectuur veel dichter bij computerbussen. Deze omstandigheid brengt echter ook een beperking met zich mee van de kabellengte, die vanwege optredende interferentie in de kabel niet groter mag zijn dan 5 meter.

De maximale spanning die wordt gebruikt in de poortsignaallijnen is +5 V. Voor eenvoudige datatransmissie zijn slechts tien signaallijnen nodig - dit zijn 8 datalijnen, een stroboscoopsignaallijn, dat wil zeggen een signaal dat de poort klaar is om gegevens te verzenden en een bezette lijn. De overige lijnen worden gebruikt voor compatibiliteit met de Centronics-standaard.

LPT-poort van het “vrouwelijke” type met contactnummering.

Pin-out DB25 parallelle poortconnector:

  • 1 – Gegevensflitser
  • 2-9 – Gegevens, bits 0-7
  • 10 – Bevestiging (bevestiging van de printer)
  • 11 – Bezet
  • 12 – Papier op
  • 13 – Selecteer (printer actief)
  • 14 – Automatische invoer
  • 15 – Fout
  • 16 – Init (printerinitialisatie)
  • 17 – Selecteer Ingang
  • 18-25 – Aarde

Conclusie

De LPT-poort is een personal computerinterface die nu als verouderd wordt beschouwd en geen noemenswaardige ondersteuning krijgt van computerhardware- en softwarefabrikanten. De parallelle poort wordt echter nog steeds met succes gebruikt in veel oudere modellen computers en printers.

De LPT-poort, vaak parallel genoemd, is een van de oudste pc-poorten. Hoewel een dergelijke poort tegenwoordig niet op alle moederborden beschikbaar is, is deze nog steeds enigszins wijdverspreid, en daarom zijn veel gebruikers van computers en kantoorapparatuur, met name printers, zeer geïnteresseerd in wat het is.

Eerst moet u begrijpen wat de afkorting lpt-poort betekent. LPT betekent dus een afkorting voor een combinatie van meerdere Engelse woorden, namelijk: Line Print Terminal. Vertaald in het Russisch betekent LPT lijnprinterterminal. Aan de hand van de naam wordt duidelijk dat het vooral bedoeld is voor een drukker. Maar vanuit theoretisch oogpunt kunnen enkele andere apparaten op LPT worden aangesloten. Voor dit doel wordt een speciale adapter gebruikt: een lpt-adapter. Hieraan moet worden toegevoegd dat het een andere naam heeft, geaccepteerd door gebruikers: printerpoort.

Over het algemeen heeft lpt port een vrij lange ontwikkelingsgeschiedenis. Het is ontwikkeld door medewerkers van het bedrijf Centronics, dat zich begin jaren 70 van de vorige eeuw specialiseerde in de productie van matrixprintapparaten. Begin jaren 80 werd deze printerpoort op grote schaal gebruikt door IBM, die deze op zijn pc's gebruikte. In dat decennium slaagde de lpt-haven er zelfs in om te worden standaard optie nodig om apparaten mee te verbinden hoge snelheden beschikbaar in die jaren.

Aanvankelijk werd de LPT-interface in verschillende versies gepresenteerd geweldige vriend van andere redacteuren. Bovendien was het in de originele versie unidirectioneel, d.w.z. met zijn hulp was het mogelijk om informatie uitsluitend naar een randapparaat over te brengen. Natuurlijk was dit soort situaties niet geschikt voor veel gebruikers, omdat... Al in die jaren werden er printapparaten geproduceerd die gegevensoverdracht in twee richtingen vereisten. Daarom moesten de ontwikkelaars enige tijd later de LPTl-interface verschillende keren verbeteren. Dit proces duurde totdat de standaard, IEEE 1284 genaamd, werd gepresenteerd. Zo presenteerden de ontwikkelaars het definitieve poortontwerp. Nieuwe standaard had de steun van meerderen verschillende modi werk. Bovendien was het compatibel met eerdere standaarden. In de definitieve versie kon de printerinterface voor die tijd een vrij hoge informatieoverdrachtsnelheid ondersteunen, namelijk 5 Mb/s!

Hoe werkt een parallelle poort?

Naam parallelle LPT ontvangen vanwege het feit dat de datatransmissie in de erop aangesloten kabel parallel wordt uitgevoerd, waarvoor meerdere geleiders tegelijkertijd worden gebruikt. Juist hierdoor verschilt het aanzienlijk van sommige, wat consistent is. Het aantal geleiders in de kabel die op de LPT wordt aangesloten, is doorgaans acht. Bovendien kan het meerdere lijnen bevatten die bedoeld zijn voor het verzenden van besturingssignalen. Gebruiken dus com-poort Vergeleken met LPT heeft het een aantal sterke beperkingen en nadelen.

Ondanks dat de Centronics-poort vooral werd gebruikt om de verbinding tussen de printer en de pc te organiseren, werd deze toch voor andere doeleinden gebruikt. Met LPT kunt u bijvoorbeeld twee personal computers rechtstreeks met elkaar verbinden - hiervoor wordt meestal een Interlink-kabel gebruikt. Tot netwerkkaarten Ethernet werd niet wijdverspreid; dit type verbinding was erg populair. Het kon gebruikers natuurlijk geen echt hoge informatieoverdrachtsnelheden bieden, maar desondanks was deze methode om twee computers met elkaar te verbinden in die jaren vrijwel de enige mogelijke. Hieraan moet worden toegevoegd dat er zelfs speciale sleutels zijn elektronische soort, die speciaal zijn ontworpen voor aansluiting op een parallelle poort.

Over de kenmerken van LPT-bediening

Zoals hierboven vermeld ondersteunt LPT, in tegenstelling tot com, parallelle gegevensoverdracht. In de eerste modellen personal computers was het een van de snelste. De interface is, vanwege de mogelijkheid om informatie over meerdere lijnen te verzenden, in veel opzichten qua architectuur vergelijkbaar met de bussen die in pc's worden gebruikt. Maar het zijn juist dit soort omstandigheden die de lengte van de kabel beperken, die niet langer mag zijn dan 5 meter. Anders zal er voortdurend interferentie optreden in de verbinding tussen de pc en de printer.

Voor het organiseren van een normale datatransmissie zijn in de regel 10 signaalleidingen nodig. De overige lijnen worden gebruikt voor compatibiliteit met de Centronics-kabelstandaard. De maximale spanningsinstelling die op LTP-signaallijnen wordt gebruikt, is doorgaans +5 V.

Poortconnector en Centronics-kabel

Als we het hebben over de parallelle poortconnector, bevindt deze zich op het moederbord zelf, hoewel tot halverwege de jaren 90 van de vorige eeuw dit onderdeel meestal gelegen op de zogenaamde multicard, die in het uitbreidingsslot is geplaatst. De LPT-uitgang is een 25-pins DB25-connector.

Om een ​​verbinding tot stand te brengen tussen een personal computer en kantoorapparatuur voor afdrukken met behulp van persoonlijke haven u moet een Centronics-kabel gebruiken. In dit geval is de connector die beschikbaar is op kantoorapparatuur 36-pins. Het belangrijkste kenmerk dus van deze kabel bestaat uit twee verschillende connectoren aan beide zijden.
Houd er ook rekening mee dat de Centronics-connector vaak de kabelconnector wordt genoemd die bedoeld is voor het moederbord van een personal computer, maar in feite een printerconnector is - d.w.z. één met 36 pinnen. Wat betreft de connector die rechtstreeks voor LPT is bedoeld, deze heet Amfenolstacker. Het is noodzakelijk om zulke verschillen in namen te kennen om alle dingen bij hun eigen naam te kunnen noemen.

Kortom

Concluderend kunnen we zeggen dat de parallelle poort van de Line Print Terminal een pc-interface is die inmiddels al behoorlijk verouderd is. Ondanks de grote verspreiding ervan in de laatste decennia van de vorige eeuw, krijgt deze haven tegenwoordig niet veel steun van veel producerende bedrijven computerapparatuur, kantoorapparatuur en software. Desondanks wordt LPT nog steeds met succes gebruikt op veel modellen pc's en afdrukapparaten die tegenwoordig verouderd zijn. Maar heel vaak is een com-lpt-adapter vereist om een ​​verbinding tussen een computer en een oude printer tot stand te brengen. Tegenwoordig zijn ze in principe in de uitverkoop te vinden, maar afhankelijk van beschikbaarheid noodzakelijke kennis en vaardigheden, je kunt zo'n adapter absoluut onafhankelijk installeren.

Ondanks het feit dat het tegenwoordig stevig in de mode is geworden USB-interface- poort, voor amateurradiodoeleinden blijft de LPT-poort tegenwoordig behoorlijk in trek. Het is immers niet zo belangrijk hoe en via welke poort externe apparaten vanaf de computer worden aangestuurd, het resultaat is belangrijk. Waarom heb ik besloten de LPT-poort te bestuderen? Het antwoord is simpel, dit is een redelijk toegankelijke en gemakkelijk te leren port qua programmeren, voor beginners is dit waarschijnlijk niet slecht praktische gids over het beheersen van LPT, en in de toekomst andere poorten - interfaces. In dit artikel zal ik proberen beginnende radioamateurprogrammeurs in detail vertrouwd te maken met de principes van LPT-poortprogrammering. Praktisch programmeren zal worden getoond met behulp van de programmeertalen Pascal en Delphi. Er wordt van je verwacht dat je basiskennis hebt van Pascal en Delphi, en natuurlijk radio-elektronica, binnen de 10 lessen die op de site worden gepresenteerd.

Wat is een LPT-poort?

De LPT-poort is de plaats op de computer waarop de printer is aangesloten. Maar je kunt er nog veel meer interessante dingen in stoppen. Inclusief de schema's die je bedacht hebt. Via de LPT-poort heb ik bijvoorbeeld het licht in de kamer aangedaan, de bediening van het roterende antenne-apparaat geïmplementeerd en vele andere experimenten uitgevoerd (het meten van enkele parameters van radiocircuits met behulp van de poort, enz.).

Zo zien de computerconnectoren en connectoren eruit.

Richting

Signaal

Voor eenvoudige regelcircuits hebben we conclusies nodig:

2 - 9 zijn uitgangen Data0-7. 18 - 25 is aarde (min). Meestal (niet altijd) zijn ze aangesloten op de computerkast. Dit contacten die nodig zijn voor het maken van uw eigen circuits. Ik wil ook uw aandacht vestigen op de uitvoer: dit is "Data Strobe". Zoals ik het begrijp, vertelt een positief signaal aan deze uitgang het apparaat dat het de volgende opdracht moet lezen. Als we deze uitgang niet programmatisch aansturen, zal de printer eenvoudigweg geen aandacht besteden aan de andere uitgangen. Om informatie in de poort in te voeren, worden pinnen 10-13 en 15 gebruikt. Meer details later. De poortuitgangen kunnen slechts twee statussen accepteren: log0 en log1. Wanneer u de computer aanzet, veranderen de uitvoerstatussen snel. Ga vervolgens naar log0. Afhankelijk van het type moederbord kunnen één of twee uitgangen naar log1 gaan. Vervolgens bij het laden van het besturingssysteem Windows-statussen ingangen kunnen opnieuw veranderen. Nadat het laden is voltooid, raakt het systeem de uitgangen pas aan als het afdrukken of zoeken naar apparatuur begint. Voorbeelden van circuits voor het debuggen van programma's bij het werken met een LPT-poort en meer. In deze sectie zal ik proberen verschillende voorbeelden te geven van circuits die worden bestuurd met behulp van een LPT-poort. Ik denk dat deze circuits voldoende zijn om de principes van de poort te bestuderen. Toen ik begon met het programmeren van de LPT-poort, heb ik mezelf een klein circuit gesoldeerd. Het lijkt mij dat dit het eenvoudigste en meest eenvoudige is. duidelijk voorbeeld voor studeren, adviseer ik je zonder uitstel lange doos soldeer jezelf hetzelfde circuit. Het zal nuttig voor ons zijn tijdens de lessen:

Alle weerstanden in het circuit zijn 270 - 470 ohm, afhankelijk van de geselecteerde LED's. Weerstanden beperken hier het stroomverbruik. Volgens de norm mag de spanning tussen de signaalpin en aarde niet hoger zijn dan 2,4 V - 2,6 mA. Die. heel weinig, maar in feite zijn moderne moederborden ontworpen voor zware belasting en hebben zeer vaak een kortsluitbeveiliging. Er moet in ieder geval heel voorzichtig met de haven worden omgegaan, want... zonder hem moederbord Het kan zijn dat de computer helemaal niet meer wil werken.

Hier is het meeste

In dit schema is de haven gescheiden van het hoogspanningsgedeelte en loopt deze vrijwel geen gevaar. In dit circuit heb ik een 4N25 opto-isolator geïnstalleerd - de goedkoopste en kleinste. De spoel in het diagram is een 12 volt relais. Tijdens de experimenten heb ik het RES22-relais op dit circuit aangesloten, en daarop tafellamp. Om te testen heb ik een programma geschreven dat de lamp aanstuurt via de klok...
Hier is trouwens een voorbeeld van het besturen van een triac:

Ik heb dit circuit eenvoudigweg aangesloten op de plaats van de schakelaar voor de hoofdverlichting in mijn kamer. We hebben dus gekeken naar enkele eenvoudige circuits die veilig kunnen worden gebruikt in onze experimenten met een LPT-poort, en die later als basis voor de ontwikkeling kunnen worden gebruikt. beheerde apparaten. En dus heb je uit dit artikel geleerd wat een LPT-poort is en hoe deze kan worden gebruikt voor amateurradiodoeleinden. We gaven ook voorbeelden van de eenvoudigste radiocircuits die we voor verdere experimenten zullen gebruiken. Laten we verder gaan met de theorie en praktijk van LPT-poortprogrammering.

|