tévék. Konzolok. Projektorok és tartozékok. Technológiák. Digitális TV

Hol van a nyomtató lpt1 portja? Tanuljon meg dolgozni LPT port LTP csatlakozóval

Az alkotók már az első számítógépek hajnalán szembesültek azzal a feladattal, hogy különféle eszközöket tudjanak csatlakoztatni hozzájuk. Ez különösen akkor vált aktuálissá, amikor a számítógépek már nem egész helyiségeket foglaltak el, hanem elkezdtek elférni az asztalon, vagyis személyessé váltak. Hiszen a számítógép nemcsak a számítások elvégzésének eszköze, hanem egy olyan eszköz is, amelynek felhasználója sokféle funkciót végezhet: szöveget vagy fényképeket nyomtathat, kezelhet. különféle eszközök, játszhat filmeket és zenét, kapcsolatba léphet más felhasználókkal a világ minden tájáról számítógépes hálózat. Mindez úgy válik lehetővé, hogy külső eszközöket csatlakoztatunk a számítógéphez, amelyeket általában perifériának neveznek, speciális egységes csatlakozók, úgynevezett portok segítségével.

Személyi számítógép portok

Portok személyi számítógép(más néven interfészek) a számítógép alaplapján elhelyezett speciális eszközök, vagy a hozzá csatlakoztatott kiegészítő kártyák, amelyek a számítógép és a külső eszközök (nyomtató, egér, monitor, webkamera stb.) közötti adatátvitelre szolgálnak. Minden port 2 nagy csoportra osztható:

  • Belső - eszközök csatlakoztatásához a számítógépen belül ( merevlemezek, videokártyák, bővítőkártyák).
  • Külső - külső perifériák (szkenner, monitor, billentyűzet, kamera, flash meghajtó) csatlakoztatásához.

Ebben a cikkben megvizsgáljuk a külső portok egy típusát, nevezetesen az LPT-portot, annak működési elvét, a csatlakoztatott eszközöket és a modern alkalmazásokat.

Az LPT port megjelenése

Kezdetben az LPT-port (más néven csak nyomtatók PC-hez való csatlakoztatására fejlesztették ki, ez már a nevében is tükröződik - Line Printer Terminal, line-by-line nyomtatóterminál. De később ezt az interfészt kezdték használni más eszközök csatlakoztatására is eszközök: szkennerek, lemezmeghajtók, sőt számítógépek egymás között.

Az LPT-portot a Centronics fejlesztette ki, amely a múlt század 70-es éveiben mátrixnyomtatók gyártásával foglalkozott. De 10 év után az IBM elkezdte használni a nagy sebességű eszközeinek csatlakoztatására. Odáig jutott, hogy több lehetőség is volt ennek a felületnek különböző perifériagyártóktól.

Az eredeti verzióban ez a port egyirányú volt, vagyis csak egy irányba tudott adatokat továbbítani: a számítógépről a perifériás eszközre. Ez a korlátozás azonban hamarosan megszűnt megfelelni a felhasználóknak, mivel tömegesen kezdtek megjelenni a piacra azok az eszközök, amelyek mindkét irányban képesek voltak adatátvitelre. Ennek elérése érdekében különböző gyártók felajánlották saját fejlesztéseiket - kétirányú, ECP, EPP és mások. Amíg az IEEE 1284 nemzetközi szabványt 1994-ben elfogadták.

LPT port diagram

Az LPT portot párhuzamosnak nevezzük, mert az adatátvitel rajta keresztül több vezetéken egyidejűleg, azaz párhuzamosan történik. Ez az interfész egy 8 bites adatbusszal, egy 5 bites jelbusszal és egy 4 bites állapotbusszal rendelkezik.

Az alábbiakban az LPT port érintkezőinek diagramja látható.

Az LPT port működési elve

A legegyszerűbb konfigurációban a párhuzamos interfész működési elvének megvalósításához mindössze tizenegy vezeték lenne elegendő, nevezetesen: 1 vezeték a testhez (föld), 2 megerősítő vezeték és 8 adatátviteli vezeték. Az általánosan elfogadott IEEE 1284 szabvány szerint azonban mind a nyolc adatátviteli vezeték (2-9) külön földeléssel rendelkezik.

Az adatátvitel során mindkét eszköznek közölnie kell egymással az állapotát. Ez a 18-as és 35-ös érintkezők segítségével valósítható meg, amelyek 0 V vagy 5 V feszültséggel vannak ellátva.

Egy speciális STROBE jelet továbbít az 1. vezetéken, jelezve, hogy a számítógép egy adatbájtot telepített a vonalra, és a nyomtató megkezdheti a nyomtatást.

A 11-es láb a BUSY jelet továbbítja a számítógépnek, jelezve, hogy az eszköz műveletet hajt végre (foglalt), feldolgozva a pufferben lévő információkat.

A 12-14 érintkezők jeleket továbbítanak, amelyek vezérlőjeleket adnak a nyomtató állapotáról és a hardver ütközéseiről.

A 12 vezetéken keresztül információ kerül a PC-re, hogy nincs papír a nyomtatóban. A számítógép erre úgy reagál, hogy jeleket továbbít a SELECT és ERROR vonalak mentén, és leállítja a nyomtatást.

A 13 vezetéken keresztül a nyomtató állapotára vonatkozó információ továbbításra kerül a számítógéphez - bekapcsolt és készenlétben vagy kikapcsolt és nem készenlétben.

A 14-es érintkező jelet küld a nyomtatónak az automatikus soremelésről.

A 31-es tű (16) jelet küld a nyomtatónak a kezdeti állapotba való átviteléhez, és törli az adatpuffert, azaz minden adat törlődik a nyomtató memóriájából.

A 32-es tű (15) az összes hibajelzést továbbítja az adatátvitel során. Az ezen a vonalon küldött jelek hatással vannak az összes többi érintkezőre, és leállíthatják a nyomtatást. Például egy gyakran előforduló nyomtatóhiba az időtúllépés, amely akkor jelentkezik, amikor a nyomtató ugyanolyan típusú adatokkal dolgozik, és nem tudja továbbítani a PC-nek a FOGLALT jelzésen keresztül, hogy nem áll készen új adatok fogadására. Egy idő után egy Time Out hibaüzenet érkezik a számítógépre az ERROR vonalon keresztül, és nem kerül átvitelre új adat. Ellenkező esetben az ERROR jel hiányában további adatátvitel történne, ami a teljes rendszer lefagyásához vezetne.

A 36-os tű (17) információt továbbít a nyomtató üzemkész állapotáról, például egy hiba elhárítása után.

LPT port működési módok

Az IEEE 1284 szabvány lehetővé teszi az LPT port több üzemmódját:

  • Az SPP (Standard Parallel Port) egy egyirányú port, amely tökéletesen működik a Centronics interfésszel.
  • NibbleMode - ennek a portnak a használata a kétirányú adatcsere megszervezése SPP módban, vezérlővonalak (4 bites) használatával, hogy adatokat továbbítsanak egy perifériás eszközről a vezérlőre.
  • A bájt mód a kétirányú adatcsere mód, amelyet meglehetősen ritkán használnak. Néhány régebbi vezérlőben használták az IEEE 1284 szabvány elfogadása előtt.
  • EPP (Enhanced Parallel Port) - több ismert cég dolgozott a port fejlesztésén: Intel, Xircom és Zenith Data Systems. Működésében ez egy kétirányú port, amely akár 2 MB/sec sebességgel továbbítja az adatokat.
  • ECP (Extended Capabilities Port) - a port ezen verziója két vállalat, a HP és a Microsoft munkájának eredményeként jelent meg. Mostantól további képességekkel rendelkezik, például hardveres adattömörítés, puffer jelenléte és DMA mód. Támogatja a kétirányú (szimmetrikus) adatcserét is, melynek sebessége akár 2,5 MB/s is lehet.

LPT port beállítása

Az LPT port konfigurálása két lépésben történik: a port hardverének előzetes konfigurálása és a portmódok aktuális váltása alkalmazásszoftver segítségével.

Az LPT port konfigurálásának módja és lehetőségei a port helyétől és a kialakítás típusától függenek. A bővítőkártyákon található portok általában magukon a kártyákon található jumpereken keresztül, míg a közvetlenül a számítógép alaplapján található portok a BIOS-beállításokon keresztül konfigurálhatók.

A módok közvetlenül vagy a BIOS-on keresztül történő kiválasztása önmagában nem növeli a számítógép és a perifériák közötti adatcsere sebességét, de lehetővé teszi az illesztőprogramok kiválasztását optimális üzemmód munka. De a modern eszközillesztők maguk automatikusan beállítják a leghatékonyabb párhuzamos port működési módokat, így a legtöbb esetben már nincs szükség kézi beállításra.

Az LPT port implementációinak típusai

Korábban a legtöbb alaplapgyártó LPT-portos vezérlőket helyezett el a termékein vagy az alaplap hátlapján. Volt még egy helyszíni lehetőség. Egyes esetekben kényelmes volt a vezérlőt magára a táblára helyezni - egy külső LPT-port szalag csatlakoztatásához. De amióta megjelentek a nagyobb sebességű adatátviteli interfészek, egyre kevesebb a forrasztott LPT porttal rendelkező alaplap. Ma már nem minden gyártó termékpalettájában szerepel ilyen tábla. És akkor a modernebb interfészekhez csatlakoztatott bővítőkártyák jönnek a segítségre:

  • PCI - LPT port. Adapter egy LPT port és egy modernebb PCI csatlakozó között.
  • PCI2 - LPT-port (PCI-Ex. 2.0). Adapter az LPT port és a PCI-Ex.2.0 csatlakozó között
  • USB - LPT port. Adapter az LTP-port és a széles körben használt USB-csatlakozó modern változata között.

LPT port modern használata

Egy ilyen port párhuzamos adatátviteli képességeinek köszönhetően a 70-es, 80-as években az egyik leggyorsabb számítógépes interfészként nőtte ki magát. Ezért még 2 számítógép összekapcsolására is használták. De ugyanez a funkció korlátozza is maximális hossza kábel a szomszédos vezetékekben fellépő interferencia miatt. A hossza nem haladhatja meg az 5 m-t, ellenkező esetben a jeltorzítás meghaladja a helyes adatfelismeréshez megengedett mértéket.

A gyorsabb interfészek megjelenésével az LPT port jelentősége semmivé vált. Második szelet a rádióamatőrök adtak neki, akik az irányításra használják összeszerelt áramkörök(világítás a házban, könnyűzene és egyéb eszközök).

Tehát itt az ideje, hogy írjunk egy egyszerű programot, amely bemutatja, hogyan kell adatokat olvasni és írni egy LPT portra. Egyelőre konzolos verzióban írjuk, hogy a program megértésének és elemzésének szakaszában ne kelljen a Windows alatti kód vadjaiba "ásni" (ne aggódj, a következő cikkben kifejezetten egy vizuális felülettel rendelkező alkalmazásnak kell szentelni).


Mielőtt továbblépnénk és megírnánk a programot, meg kell értenünk az LPT portot, meg kell néznünk, miből áll, és hogyan használhatjuk fel saját céljainkra. Ha háztartási szinten beszélünk, akkor azt mondhatjuk, hogy az LPT port olyan érintkezők halmaza, amelyen a programból állíthatjuk a feszültséget 0 vagy +5 V-ra (logikai 0 és 1), vagy ezt külsővel is megtehetjük. készüléket kívülről.



Nézzük meg, mely kapcsolatokat tudjuk kezelni, és melyeket nem. Ebben segít nekünk az alábbi rajz (nem én rajzoltam, a szerző ismeretlen számomra. De nagyon jó, én magam is folyamatosan használom).

Az ábrán látható, hogy a port tűi négy csoportba oszthatók: ez "földi" következtetéseket. Feketével vannak jelölve (18-25. tűk). Mindegyik kapcsolódik egymáshoz, így bármelyiket használhatja területként a fejlesztéséhez.

Az úgynevezett regiszter tüskéi pirossal vannak jelölve Adat(2-9 csap). A regiszter alatt (hétköznapi szinten) LPT port kapcsolattartók csoportjának társítását értjük. Az Adatnyilvántartásban 8 db található. Ez a legésszerűbb regiszter - lehetővé teszi, hogy mind a programból, mind a külső eszközről logikai 0-t vagy 1-et állítsunk be a kapcsolataira, pl. ez kétirányú. Pontosan ezt használtuk az első programunkban. Port.exe- csatlakoztatta a LED-et a port 2. tűjéhez (amint most látható, ez a tű a Data regiszterhez tartozik és annak nulla bitje) és a 25-ös lábára (föld), és a program segítségével szabályoztuk a feszültség ellátását a pinre 2 a talajhoz képest. A nyilvántartás eléréséhez ismernie kell a címét: 0x378- hexadecimális rendszerben ill 888 tizedesben.


Az ábrán az áll, hogy &H378 - ez ugyanaz, mint a 0x378, csak az első megjelölés a Pascal nyelvben és hasonlókban rejlik, de mi C-ben írjuk.


Megint emlékszem a programra Port.exe, vegye figyelembe, hogy a regisztert a következő függvény használatával fértünk hozzá: _outp(Address, 0); , ahol a változó Cím korábban 888-nak volt definiálva. Most már világos, hogy ezzel jeleztük a függvényeket _outp() hogy kifejezetten az Adatnyilvántartással kívánunk dolgozni.

Nézzük tovább a kikötőt. Még két regiszter van hátra. A következő lesz a nyilvántartás Állapot(10-13., 15. tűk). Ez egy egyirányú regiszter. Csak „kívülről”, külső eszközön keresztül vezérelhető (ez azt jelenti, hogy adatokat kell megváltoztatni rajta; tetszőleges regiszterből bármilyen irányba olvashat). Van címe 0x379- hexadecimális rendszerben ill 889 tizedesben. És regisztrálj Ellenőrzés(elérhetőségek 1, 14, 16-17). Csak 4 érintkezője van, és csak egy programmal vezérelhető. A címe: 890 decimális rendszerben.



Most nézzük meg, hogyan történik az adatok írása és beolvasása az LPT port regisztereibe, pl. Hogyan állítsuk be a szükséges tűket 0-ra vagy 1-re?


Adatok írása/olvasása az Adatnyilvántartásba

Tehát nézzünk rögtön egy gyakorlati problémát. A 3-as számú LPT portot szeretném (a regiszter D1 bitje Adat) logikai 1 lett beállítva (azaz úgy, hogy +5 V legyen közte és a föld között), és ennek a regiszternek a többi tűje (2,4-9 port érintkező) nullák. Írjuk a kódot:

Közvetlen cím = 888;

int adat = 2; Out32(Cím, adatok); A függvényt használtam Out32() könyvtárak inpout32.dll, majd megszokjuk, mert...

további példák 00000010 Ennek a könyvtárnak a segítségével elemezzük. Ha ez a kód lefut, akkor kiderül, hogy a port 3-as érintkezőjénél +5 V van, a 2.4-9-nél pedig nulla lefagy. Hogyan történt ez? 0 Kezdjük kitalálni: a 888-as számot adjuk át első paraméterként az Out32() függvénynek. Mint már tudjuk, ez a Data LPT port regiszter címe. Most a függvény tudja, hova kell adatokat írni. Ezután második paraméterként a 2-es számot adjuk át, azaz. portra írandó érték. Felhívjuk figyelmét, hogy a kettő a decimális számrendszerben szerepel. Mi történik ezután? A folyamat jobb megjelenítése érdekében a 2-es számot decimálisról bináris számrendszerre konvertáljuk. A bináris szám minden számjegye jobbról balra sorrendben be van írva a regiszterbe, kezdve az alacsony rendű D0 számjegytől (a port 2-es érintkezője) és a D7 magas számjegyig (9-es érintkező). Ha a 2-es számot decimálisról binárisra konvertálja, és a számhoz 8 számjegyet ad (a regiszterben lévő számjegyek számának megfelelően), akkor 1 . bináris szám nulla jegye -

(jobboldali) D0-ra van írva, akkor Adat D1-re van írva. És így tovább a végéig, mind a 8 számjegy.

Nos, egy kicsit fáradt vagy olvasás közben? Most már világosabb lesz. Menjünk a nyilvántartáshoz

Írjuk fel a 245-ös számot. Írjuk fel a kódot:

Belföldi cím = 888; Adat int adat = 245; Adat Out32(Cím, adatok); 0 A 245-öt ismét bináris számrendszerré alakítjuk, és a számjegyeket a regiszter megfelelő bitjébe írjuk jobbról balra. Ennek eredményeként azt kapjuk, hogy az LPT port 2,4,6-9-es érintkezőinél +5 V feszültség, a 3.5-ös érintkezőknél nulla. 255 Nos, most azon gondolkodom, hogy adatokat írjak a nyilvántartásba


kitaláltuk. Meg kell jegyezni, hogy a regiszterbe írható decimális számok tartománya

között fekszik Adat hogy Adat Most a feszültségszint magas, és amelyen alacsony. Emlékszel fent, hogy a 245-ös számot írtuk a portba? Most hozzuk ki a kikötőből. Írjuk a kódot:

Közvetlen cím = 888;

int adatok; adatok = Inp32(Cím); Out32() Inp32() - ez egy olyan funkció, amely adatokat olvas ki a könyvtár portjáról. Ennek egyetlen paramétere annak a regiszternek a címe, ahonnan az adatokat ki akarjuk olvasni. A kimeneten a regiszter aktuális tartalmának megfelelő decimális számot ad vissza. A kód futtatásával a változó


adat

a 245-ös számot fogja tartalmazni. Mit jelent ez? Hogy kitaláljuk, a 245-ös számot decimálisról binárisra konvertáljuk, és nyugodtan kijelenthetjük, hogy a 2,4,6-9 port érintkezőinél most +5 V, a 3,5 érintkezőknél 0 V. (lásd a fenti ábrát)

Adatok írása/olvasása a Control regiszterbe

Most kezeljük a Control regisztert. Egyirányú, csak a mi programunk tud rá adatokat írni. Vegye figyelembe a regiszter néhány jellemzőjét. Először is csak négy munkacsapot tartalmaz. Ez azt jelenti, hogy 0 és 2 közötti számot írhat be 4 -1=16-1=15. Másodszor, van egy nagyon kellemetlen tulajdonsága: egyes kimenetei fordítottak, pl. ha erre a tűre 1-et ír, akkor 0-ra van állítva. És fordítva, 1-et olvas, de valójában 0 van. Ezért a kiírt és a kiolvasott adatok jelentése nem teljesen egyértelmű. Íme egy példa egy szám beírására a vezérlőregiszterbe. Írjuk a kódot:

Belföldi cím = 890;

int adat = 10;

Out32(Cím, adatok); ÁllapotÉs egy példa: Belföldi cím = 890; int adatok; Állapot adatok = Inp32(Cím);

Adatok írása/olvasása az állapotnyilvántartásba

Végül eljutott a nyilvántartáshoz

. Egyirányú, csak adatot lehet rá írni Állapot(10-13, 15), például a tizedikkel. És olvass újra. Más számot fog kapni. Távolítsa el a vezetőt. Elolvasás után megkapja az eredeti számot. Ez hogy működik? Kezdetben ennek a regiszternek az összes tűje +5 V magas feszültségszintű. Amikor az egyik érintkezőjét a földre csatlakoztattuk, ennek megfelelően a rajta lévő feszültség nulla lett, azaz. logikai nulla. Megpróbálhat rövidre zárni más regisztertűket Állapot földeléssel, rövidre zárva több egyszerre.

Meg kell jegyezni, hogy az ilyen kísérletekben a regiszterrel Állapot Nem teljesen egyértelmű helyzet adódik az LPT port többi érintkezőjével. A terminálok első bezárása után Állapot, a kimenetek villogni kezdenek AdatÉs Ellenőrzés. Ez annak a ténynek köszönhető, hogy az LPT portot nyomtató csatlakoztatására tervezték, és a tűket Állapot arra szolgál, hogy bizonyos szervizinformációkkal láthassa el a számítógépet. Változások a csapokban Állapot regisztrálja az operációs rendszer illesztőprogramját. Válaszakciókat is végez, amelyek más következtetések állapotának időszakos változásaként figyelhetők meg számunkra. Nem tehetsz ellene semmit. Általában csak bezárok néhány regiszter sort a porttal való munka elején Állapot a földre, és várjon körülbelül egy percet, amíg a sofőr „megnyugszik”. Ezt követően a port szabad, és új műveletek a regiszterben Állapot ne vezessenek ellenőrizetlen folyamatokhoz a kikötőben.


© Dmitrij Ivanov
2005-2006

Habrén a lámpa interneten keresztüli vezérlésével kapcsolatban felmerült az ötlet, hogy számítógépről vezéreljem otthon a világítást, és mivel már beállítottam a számítógépes vezérlést mobiltelefon, ez azt jelenti, hogy a világítás ugyanarról a telefonról vezérelhető. Miután megmutatta a cikket az egyik munkatársamnak, azt mondta, hogy neki pont erre van szüksége. Mert gyakran elalszik, miközben filmeket néz a számítógépen. Valamivel a film vége után a számítógép is elalszik, és kikapcsolja a monitort, de a szobában égve marad a lámpa. Azok. úgy döntöttem, hogy ez a dolog hasznos, és elkezdtem információkat és részleteket gyűjteni ehhez a csodához.
A többi információ habracut alatt van (vigyázat, sok kép van - forgalom).

Készülék diagram

Az eredeti séma az interneten található egyik sémából származik, és így nézett ki:

De csak apró változtatással: a 4N25 optocsatoló 1. tűje és a 2. LPT érintkező közé 390 Ohmos ellenállás került, illetve a bekapcsolás jelzésére LED is került. Az áramkört teszt üzemmódban szerelték össze, azaz. csak szükség szerint vezetékekkel csatlakoztatva és tesztelve. Ebben a verzióban egyszerűen be- és kikapcsolt egy régi szovjet zseblámpát.
Úgy döntöttek, hogy ha vezérlést végzünk, akkor nem egy készülékre, hanem legalább 4 készülékre (az alap: egy lámpa az asztalon, egy csillár két kapcsolóval, egy tartalék aljzat). Ebben a szakaszban szükségessé vált a készülék teljes kapcsolási rajzának elkészítése, és megkezdődött a különféle programok kiválasztása.
Telepítve:

  1. KiCAD
  2. Sas
Miután mindegyiket megnéztem, az Eagle mellett döntöttem, mivel a könyvtárában voltak „hasonló” részek. Íme, mi történt benne:

A diagram a DB9 portot használja, pl. egy rendes COM port, ez azért történt, hogy helyet spóroljunk az alaplapon és magukon a csatlakozókon (nekem COM-ok voltak), és mivel csak 5 vezetéket fogunk használni, ez elég lesz nekünk tartalékkal DB25-ről (LPT) is készítsen adaptert DB9-re (COM), esetemben ez a következőképpen történik:
LPT 2-9 pin = COM 1-8 pin adatvezérlő érintkezők;
LPT 18-25 pin (gyakran össze vannak kötve) = COM 9 pin - ez a mi földelésünk.
Az áramkör további 12V-os tápot is használ a relé táplálására a terv szerint, ez egy egyszerű kínai töltő lesz, vagy esetleg egy 9V-os Krona (egy relé működik rendesen, egyszerre 4-et kell ellenőrizni); A számítógép portjának rögzítésére külön tápegységet és optocsatolóval végzett galvanikus leválasztást használnak. Ha akarja, természetesen 12 V-os számítógép tápról is táplálhatja, de ezt mindenki saját maga, saját kárára és kockázatára teszi.

Az eszköz létrehozásához szükséges alkatrészek
  1. COM port - 1 db
  2. tápcsatlakozó - 1 db.
  3. zöld LED - 4 db
  4. optocsatoló 4n25 - 4 db.
  5. ülés optocsatolóhoz (nekem csak 8 lábas volt) - 4 db.
  6. ellenállás 390 Ohm - 4 db.
  7. ellenállás 4,7 kOhm - 4 db.
  8. tranzisztor KT815G - 4 db.
  9. relé HJR-3FF-S-Z - 4 db.
  10. bilincsek 3 érintkezőhöz - 4 db.
  11. fólia PCB

A nyomtatott áramköri rajz elkészítése

Miután megpróbáltam az Eagle-t használni a PCB elkészítéséhez, rájöttem, hogy ez egy kicsit bonyolult lesz, és úgy döntöttem, hogy keresek egy könnyebb lehetőséget. Ez az opció a sprint layout 5 program volt, még ha Windows-ra készült is, de Linux alatt gond nélkül fut a wine-ban. A program kezelőfelülete intuitív, orosz nyelvű és a programnak elég egyértelmű súgója (súgó) található. Ezért a nyomtatott áramköri lap fejlesztésével kapcsolatos minden további lépést az 5. sprint elrendezésben (a továbbiakban: SL5) hajtottak végre.
Bár sokan használják ezt a programot táblák fejlesztéséhez a készülékeimhez, nem tartalmazta a szükséges részeket (még a letöltött makrógyűjtemények halomában sem). Ezért először létre kellett hoznunk a hiányzó részeket:
  1. COM port (a rögzítési lyukak szerint nem ugyanaz, mint az enyém)
  2. konnektor
  3. háromágú bilincs
  4. relé HJR-3FF-S-Z
Ezen alkatrészek típusai:

A szükséges alkatrészek hozzáadása után megkezdődött a nyomtatott áramköri lap tényleges tervezése. Több próbálkozás kellett hozzá, körülbelül öt volt. A tábla minden változatát kartonra nyomtatták, lyukakat lyukasztottak és részeket helyeztek bele. Valójában kiderült, hogy a COM portom nem egyezik az SL5-ben lévővel. A relé áramkörében is előkerült egy kis hiba - sőt, 2-3 mm-rel eltolódott a relétest. Természetesen minden hibát kijavítottak.
Az első nyomtatott verziónál az is kiderült, hogy a tranzisztor rosszul volt bekötve, két érintkező összekeveredett.
Az összes javítás és beállítás után a kapott tábla így nézett ki:

Az SL5 Photo View funkcióval rendelkezik a tábla megtekintéséhez, így néz ki benne:

A tábla végleges verziójában még lesz némi finomítás a pályákon, de egyébként ugyanúgy néz ki.

Az SL5-ben van egy kényelmes lehetőség a tábla nyomtatására is, elrejtheti a felesleges rétegeket és kiválaszthatja az egyes rétegek nyomtatási színét, ami nagyon hasznos.

A PCB előkészítése

Úgy döntöttek, hogy a táblát LUT módszerrel (lézer-vas technológia) készítik el. Ezután az egész folyamat a képen látható.

Vágjon ki egy darab PCB-t a kívánt méretre.

Fogjuk a legfinomabb csiszolópapírt, és gondosan megtisztítjuk a rézfelületet.

A felület tisztítása után le kell mosni és zsírtalanítani kell. Le lehet mosni vízzel és zsírtalanítani acetonnal (nálam 646-os oldószer volt).
Ezután nyomtatunk lézernyomtató bevont papírra a táblánkat, nem felejtve el a nyomtatót a legvastagabb nyomatra állítani (festéktakarékosság nélkül). Ez a lehetőség kicsit sikertelennek bizonyult, mert elkenődött a festék, de egy újabb próbálkozás pont megfelelő volt.

Most át kell vinnie a rajzot papírról textolitra. Ehhez kivágjuk a mintát és felvisszük a textolitra, megpróbáljuk szükség szerint igazítani, majd vasalóval felmelegíteni. A teljes felületet alaposan fel kell melegíteni, hogy a festék megolvadjon és hozzátapadjon a réz felületéhez. Ezután hagyjuk egy kicsit hűlni a deszkát, és folyó víz alatt nedvesítsük meg. Amikor a papír elég nedves lesz, le kell választani a tábláról. Csak az elakadt festék marad a táblán. Így néz ki:

Ezután megoldást kell készítenie a maratáshoz. Ehhez vas-kloridot használtam. A vas-kloridos üvegre rá van írva, hogy az oldatot 1-3 arányban kell elkészíteni. Ettől kicsit eltértem és 240 g vízhez 60 g vas-kloridot készítettem, pl. 1 a 4-re lett, ennek ellenére a tábla maratása rendesen, csak kicsit lassabban történt. Kérjük, vegye figyelembe, hogy a száraz vas-klorid vízben való feloldása hőt termel, ezért kis adagokban kell a vízbe önteni és keverni. A maratáshoz természetesen nem fém edényeket kell használni, esetemben műanyag edény volt (mint egy hering). Ezt a megoldást kaptam:

Mielőtt leengedtem volna a táblát az oldatba, szalaggal ragasztottam a hátoldalára egy horgászzsinórt, hogy megkönnyítsem a deszka eltávolítását és megfordítását. Ha az oldat a kezünkre kerül, gyorsan le kell mosni szappannal (a szappan semlegesíti), de foltok még maradhatnak, minden az adott körülményektől függ. A ruhák foltjait egyáltalán nem távolítják el, de volt szerencsém ezt nem magam tesztelni. A táblát réz oldalával lefelé kell az oldatba meríteni, és nem teljesen laposan, hanem ferdén. A táblát időnként érdemes megtisztítani a bányászattól, mert ez megzavarja a további maratást. Ezt pamut törlőkendővel lehet megtenni.

Az egész maratási folyamat 45 percig tartott, 40 perc is elég lett volna, de csak még egy dologgal voltam elfoglalva.
A maratást követően szappannal lemossuk a táblát, damillal letépjük a szalagot, és megkapjuk:

Figyelem! Ne öntse a vas-klorid oldatot a mosogatóba (csatornába) - ez károsíthatja a mosogató fém részeit, és általában az oldat még hasznos lehet.
Ezután le kell mosni a festéket, ez sikeresen megtörtént ugyanazzal a 646-os oldószerrel, amelyet a zsírtalanításhoz használtunk (az oldószer bőrrel való hosszan tartó érintkezése károsíthatja azt).

A következő lépés a lyukak fúrása. Kezdetben 1 mm-es és 1,5 mm-es lyukak voltak a táblán, mivel nem találtam vékonyabb fúrókat. Városunkban sem lehetett találni villanymotorra rögzíthető befogótokmányt, így minden nagy fúróval történt.

Megérkezett az első készülék

Az első alkalommal csak két fúrót vettem, és egy ilyen fúró használatakor ez nem volt elég. Az egyik fúró eltört, a másik meghajlott. Amit sikerült megfúrnom az első napon:

Másnap vettem öt fúrót. És pont elég volt, mert ha nem törnek el (egyébként az ötből csak egy tört el), akkor eltompulnak, és tompával fúrva a nyomok megromlanak, a réz elkezd lehámozni. A tábla teljes kifúrása után a következőket kapjuk:

Fúrás után a deszkát bádogozni kell. Ehhez a régi módszert használtam - forrasztópáka, TAGS fluxus és ón. Ki akartam próbálni Rose ötvözet felhasználásával, de városunkban nem található.

Az ónozás után a következő eredményt kapjuk:

Ezután meg kell mosni a táblát, hogy eltávolítsa a folyasztószer maradványokat, mivel a TAGS vízzel tisztítható, ezt vízzel vagy alkohollal is megteheti. Közben csináltam valamit - régi vodkával lemostam és vattakoronggal áttöröltem. Mindezen lépések után a táblánk készen áll.

Alkatrészek beszerelése

A tábla helyességének ellenőrzésére eleinte csak egy sort szerelek össze (a négyből), sosem lehet tudni, hol csúszott be a hiba.

Az alkatrészek beszerelése után megyünk és csatlakoztatjuk az eszközt a számítógéphez LPT-n keresztül, ehhez a DB25(LPT)-től a DB9(COM-ig) egy adaptert forrasztunk a következő formában:

  • 2 tűs DB25 és 1 tűs DB9
  • 3 tűs DB25 és 2 tűs DB9 között
  • 4 tűs DB25 - 3 tűs DB9
  • 5 tűs DB25 és 4 tűs DB9 között
  • 6 tűs DB25 és 5 tűs DB9 között
  • 7 tűs DB25 - 6 tűs DB9
  • 8 tűs DB25 - 7 tűs DB9
  • 21 tűs DB25 (18 és 25 között bármelyik lehetséges) és 9 tűs DB9
Mivel vezetékként közönséges csavart érpárt használtak, egy vezeték hiányzott, de ehhez az eszközhöz csak öt vezeték elegendő, így ez az opció megfelelő. A mi kapcsolt terhelésünk egy egyszerű szovjet zseblámpa. Nos, tápegységként - univerzális kínai tápegység (4 csatlakozó és tápegység 3-12 V között). Itt van minden összerakva:

De a készülék már működik:

Ezzel egy újabb este véget ért, és másnapra maradt a maradék alkatrészek beszerelése.

És itt a teljesen összeszerelt készülék:

Nos, egy rövid videó a működéséről (a minőség nem túl jó, nem lehetett rendesen lefilmezni)

Ennyi, már csak egy normál tokot kell találni a készülékhez és üzembe helyezni.

Szoftver rész

Természetesen az LPT port vezérléséhez szükség van valamilyen szoftverre, de mivel otthon Linuxom van, úgy döntöttem, egyszerűen írok egy egyszerű programot, majd hozzáadom és szükség szerint adaptálom. Valahogy így nézett ki:
#beleértve
#beleértve
#beleértve
#beleértve
#define BASE 0x378
#define IDŐ 100000
int main()
{
int x = 0x0F;
int y = 0x00;
if (ioperm(BASE, 1, 1))
{
perror("ioperm()");
kilépés(77);
}
outb(x,BASE);
visszatérés 0;
}

Ez a program 0x0F = 00001111-et küld az LPT portra, azaz. 1-et lát el a 2-5 érintkezőkhöz (Data0-Data3), és ez a vezérlőfeszültségünk a 2-5 érintkezők és a test között (18-25 érintkezők), tehát mind a négy relé bekapcsol. A 0x00-at leállításhoz portra küldő program pontosan ugyanígy működik, csak az x - outb (y, BASE) helyett y-t küld. A port állapotát is elolvashatja:
#define BASEPORT 0x378 /* lp1 */
...
printf("állapot: %d\n", inb(BASEPORT));
...

A program egyetlen figyelmeztetése az, hogy rootként kell végrehajtani, mivel az ioperm funkció nem érhető el a hétköznapi felhasználók számára. Azt hiszem, nem kell elmondanunk, hogyan kell megoldani egy ilyen problémát, mindenki a számára megfelelő lehetőséget választja.

Ezt követően a programot úgy módosították, hogy a parancssori paraméterek átadásával meg lehetett adni, hogy melyik eszközt és mit kell tenni.
Az "sw --help" kimenete:
Program a relék LPT porton keresztüli vezérlésére.
Egy programnak egy vagy két paramétere lehet.
Paraméterformátum: sw [eszköz száma] [művelet]
eszközszám - 1-től 8-ig
művelet - "on", "off", "st" - be, off, állapot
Példa: "sw 2 on" a második eszköz bekapcsolásához vagy "sw --help" a súgó megjelenítéséhez

PS ha valakinek szüksége van rá, akkor feltehetem valahova az sl5-ben lévő tábla diagram fájlját és a vezérlő program forráskódját.

Párhuzamos port és PPR

A legtöbb modern, LPT-nophoz csatlakoztatott periféria támogatja az 1284 szabvány és a PnP funkciókat. Ezen funkciók számítógépen való támogatásához hardveres szempontból elegendő egy 1284-es szabványnak megfelelő interfészvezérlő. érdekeit” a lehetséges cseremódokról az 1284 módú egyeztetési protokoll használatával. Ezután a PnP működéséhez a csatlakoztatott eszköznek minden szükséges információt meg kell adnia magáról az operációs rendszernek. Ezek legalább a gyártó azonosítói, a modellek és a támogatott parancsok készlete. Az eszközzel kapcsolatos részletesebb információk tartalmazhatnak egy osztályazonosítót, részletes leírásés annak az eszköznek az azonosítója, amellyel a kompatibilitás biztosított. A kapott információk alapján az adott eszköz támogatására az operációs rendszer lépéseket tehet a szükséges szoftver telepítéséhez.

A PnP-támogatással rendelkező eszközöket az OS felismeri az indítási szakaszban, ha természetesen interfészkábellel csatlakozik a porthoz, és be van kapcsolva. Ha a Windows olyan csatlakoztatott PnP-eszközt észlel, amely eltér attól, ami az adott porthoz regisztrált a rendszerleíró adatbázisában (vagy egyszerűen csak egy új eszköz), akkor megpróbálja telepíteni az eszközhöz szükséges illesztőprogramokat az operációs rendszer disztribúciójából vagy a szállítókészletből. új készülék. Ha a Windows nem akarja észrevenni az újonnan csatlakoztatott PnR-eszközt, ez a porttal vagy a kábellel kapcsolatos problémát jelezhet. A PPR rendszer nem működik, ha a készüléket olcsó „nem kétirányú” kábellel csatlakoztatjuk, amely nem rendelkezik a Selectln# vonal mentén (az LPT port 17-es érintkezője és a Centronics csatlakozó 36-os érintkezője).

Általában egy LPT-portot használnak a nyomtató csatlakoztatására (lásd a 8.3.1. szakaszt), de ezzel még nem ér véget a használat.

Két számítógép csatlakoztatásához A párhuzamos interfész a használt portok módjától függően különböző kábeleket használ. A legegyszerűbb és leglassabb a nibble mód, amely tovább fut mindenki portok. Ehhez az üzemmódhoz elegendő 10 jel és egy közös vezeték a kábelben. A kábelcsatlakozók bekötését a táblázat tartalmazza. 1.11. A két számítógép közötti kommunikációt ezzel a kábellel olyan szabványos szoftverek támogatják, mint az MS-DOS vagy a Norton Commander Interlnk.

Nagy sebességű kommunikáció két számítógép között ECP módban is végrehajtható (az EPP mód kényelmetlen, mert két számítógép busz I/O ciklusainak szinkronizálását igényli).

Kapcsolat scanner csak akkor hatékony, ha a port legalább kétirányú módot biztosít (Bi-Di) mivel a főszál bemenet. Jobb az ECP portot használni, ha ezt a módot támogatja a szkenner (vagy az EPP, ami nem valószínű).


Kapcsolat külső meghajtók(Iomega Zip meghajtó, CD-ROM stb.), LAN adapterekés más szimmetrikus bemeneti/kimeneti eszközöknek megvannak a sajátosságai. SPP módban az eszköz lassulása mellett ennek az üzemmódnak az alapvető aszimmetriája észrevehető: adatok olvasása történik kétszer olyan lassú, mint(nagyon lassú) rekord. Alkalmazás kétirányú rezsim (Bi-Di vagy PS/2 Tour 1) megszünteti ezt az aszimmetriát - a sebességek egyenlőek lesznek. Csak az EPP-re vagy ECP-re váltva érheti el normál a munka sebessége. EPP vagy ECP módban az LPT-porthoz való csatlakozás majdnem olyan gyors, mint egy ISA-vezérlőn keresztül. Ez akkor is igaz, ha szabványos buszinterfésszel rendelkező eszközöket csatlakoztat az LPT portokhoz interfészkonvertereken keresztül (például LPT - IDE, LPT - SCSI, LPT - PCMCIA). Vegye figyelembe, hogy az adapteren keresztül LPT porthoz csatlakoztatott IDE merevlemez SCSI-eszközként jeleníthető meg a rendszer számára (ez logikusabb programpont látomás).

2. Soros interfészek

Az adatátvitel soros interfésze egyetlen jelvonalat használ, amelyen az információs bitek egymás után, egymás után kerülnek továbbításra. Innen származik az interfész és a port neve. angol kifejezések - Soros interfészÉs Sorozatos rész(néha helytelenül "soros"-nak fordítják). A soros átvitel lehetővé teszi a jelvonalak számának csökkentését és a kommunikációs tartomány növelését. Jellemző tulajdonsága a nem TTL jelek használata. Számos soros interfész a külső (általában bemeneti) jelek galvanikus leválasztását használja az eszköz áramköri földeléséről, lehetővé téve különböző potenciállal rendelkező eszközök csatlakoztatását. Az alábbiakban megvizsgáljuk az RS-232C, RS-422A, RS-423A, RS-485 interfészeket, az áramhurkot, a MIDI-t és a COM portot.

2.1. Soros átviteli módszerek

A soros adatátvitel történhet aszinkron vagy szinkron módban. at aszinkron minden bájtot megelőz kezdő bit, jelzi a vevőnek az adás kezdetét, majd ezt követi adatbitekés talán paritás bit(paritás,). Befejezi a csomagot állj meg egy kicsit, a küldések közötti szünet garantálása (2.1. ábra). A következő bájt kezdőbitje a stopbit után bármikor elküldésre kerül, vagyis az adások között tetszőleges időtartamú szünetek lehetségesek. A start bit, amelynek mindig szigorúan meghatározott értéke van (logikai 0), egyszerű mechanizmust biztosít a vevő szinkronizálására az adó jelével. Feltételezzük, hogy a vevő és az adó azonos adatátviteli sebességgel működik. A vevő belső órajel-generátora a referenciafrekvencia ellenosztóját használja, amely nullára áll vissza a startbit vételének pillanatában. Ez a számláló belső villogást generál, amellyel a vevő rögzíti a következő vételt

bitek. Ideális esetben a villogók a bit intervallumok közepén helyezkednek el, ami lehetővé teszi az adatok vételét még a vevő és az adó sebességének enyhe eltérése esetén is. Nyilvánvaló, hogy 8 bites adat, egy vezérlőbit és egy stopbit átvitelekor az adatok helyes felismerésének maximális megengedett sebessége nem haladhatja meg az 5%-ot. Figyelembe véve a fázistorzulásokat és a belső szinkronizációs számláló diszkrét működését, kisebb frekvenciaeltérés is megengedhető. Minél kisebb a belső oszcillátor referenciafrekvencia-osztási tényezője (minél nagyobb az adási frekvencia), annál nagyobb a hiba a kapuknak a bitintervallum közepére történő rögzítésekor, és a frekvenciakonzisztencia követelményei is szigorúbbá válnak. Minél nagyobb az átviteli frekvencia, annál nagyobb az éltorzítás hatása a vett jel fázisára. Ezeknek a tényezőknek a kölcsönhatása megnövekedett követelményekhez vezet a vevő és az adó közötti frekvenciaillesztéshez, ahogy az átviteli frekvencia növekszik.

Az aszinkron küldési formátum lehetővé teszi a lehetséges azonosítást átviteli hibák:

» Ha egy él vétele jelzi a küldés kezdetét, és a start bit villogása logikai egy szintet érzékel, a start bit hamisnak minősül, és a vevő ismét várakozási állapotba kerül. Előfordulhat, hogy a vevő nem jelenti ezt a hibát.

„Ha logikai nulla szintet észlel a stopbitidő alatt, akkor a rendszer stopbithibát észlel.

Ha paritást használunk, akkor az elküldés után az adatbit továbbítódik ellenőrző bit. Ez a bit az egyes adatbitek számát párosra vagy páratlanra egészíti ki, az elfogadott konvenciótól függően. Ha egy bájtot hibás ellenőrző bit értékkel fogadunk, akkor a rendszer hibát észlel.

A formátumfigyelés lehetővé teszi a sortörés észlelését:

ebben az esetben egy logikai nullát fogadunk el, amit először startbitként értelmezünk, és nulla adatbitet, majd a stopbit vezérlése aktiválódik.

Az aszinkron üzemmódhoz a következő sorozatokat alkalmazzuk: szabványos adatátviteli sebességek: 50, 75, 110, 150,300,600,1200,2400,4800,9600, 19200, 38400, 57600 és 115200 bps. Néha a "bit/s" mértékegység helyett "baud"-t használnak, de ez helytelen, ha figyelembe vesszük a binárisan továbbított jeleket. A vonalállapot-változások frekvenciáját baudban szokás mérni, és egy nem bináris kódolási módszerrel (amelyet a modern modemekben széles körben alkalmaznak) egy kommunikációs csatornában a bitsebességek (bit/s) és a jelváltozások (baud) többféleképpen eltérhetnek. alkalommal (további részletekért lásd az A mellékletet).

Mennyiség adatbit lehet 5, 6, 7 vagy 8 (az 5 és 6 bites formátumok nem túl gyakoriak). Mennyiség megállj kicsit lehet 1, 1,5 vagy 2 (a „másfél bit” csak a stop intervallum időtartamát jelenti).

Aszinkron csere PC-n a segítségével valósítják meg COM porttal protokoll használatával RS-232C.

Szinkron Az átviteli mód a kommunikációs csatorna állandó tevékenységét feltételezi. A küldés egy szinkronbájttal kezdődik, amelyet közvetlenül egy információs bitfolyam követ. Ha az adónak nincs továbbítandó adata, a szünetet a szinkronizálási bájtok folyamatos küldésével tölti ki. Nyilvánvaló, hogy nagy mennyiségű adat átvitelekor a szinkronizálási többlet ebben a módban alacsonyabb lesz, mint az aszinkron módban. Szinkron üzemmódban azonban szükség van a vevő és az adó külső szinkronizálására, mivel még egy kis frekvenciaeltérés is a vett adatok torzulásához vezet. Külső szinkronizálás lehetséges vagy külön vonal segítségével a szinkronjel továbbítására, vagy önórajelű adatkódolással, amelyben a vett jelből szinkronizáló impulzusok nyerhetők ki a vevő oldalon. Mindenesetre a szinkron üzemmódhoz drága kommunikációs vonalak vagy végberendezések szükségesek. A PC-k számára speciális kártyák vannak - SDLC adapterek (drágák), amelyek támogatják a szinkroncsere módot. Elsősorban nagy IBM gépekkel (nagyszámítógépekkel) való kommunikációra használják őket, és nem használják széles körben. A szinkron adapterek közül jelenleg V.35 interfész adapterek használatosak.

On fizikai szinten A soros interfész különféle megvalósításokkal rendelkezik, amelyek az elektromos jelek továbbításának módjában különböznek. Számos kapcsolódó nemzetközi szabvány létezik: RS-232C, RS-423A, RS-422AÉs RS-485.ábrán. A 2.2. ábra a vevők és adók csatlakozási diagramjait mutatja, valamint a vonalhossz (L) és a maximális adatátviteli sebesség (V) korlátozásait is.

Kiegyensúlyozatlan interfész vonalak RS-232CÉs RS-423A a legalacsonyabb közös módú immunitással rendelkeznek, bár a vevő differenciális bemenete RS-423A némileg enyhíti a helyzetet. A legjobb lehetőségek pont-pont felülettel rendelkeznek RS-422Aés fő (busz) analógja RS-485 szimmetrikus kommunikációs vonalakon dolgozik. Különbségjeleket használnak külön (csavart) vezetékpárral az egyes jelek továbbítására.

A felsorolt ​​szabványokban a jel ábrázolva van potenciális. Vannak olyan soros interfészek, ahol a közös adó-vevő áramkörön átfolyó áram – „áramhurok” és MIDI – tájékoztató jellegű. Vezeték nélküli infravörös kommunikációs szabványokat fogadtak el a rövid távú kommunikációra. A PC-kben legszélesebb körben használt a fentiek közül a legegyszerűbb - a szabvány RS-232C, COM portok valósítják meg. Széles körben használják az ipari automatizálásban RS-485és azt is RS-422A, néhány nyomtatóban is megtalálható. Léteznek jelátalakítók ezeknek a kapcsolódó interfészeknek a befogadására.

2.2. RS-232C interfész

Az interfész adatátvitelt vagy fogadást küldő berendezések csatlakoztatására szolgál (OOD - adatvégberendezés, ill ADF - adatátviteli berendezések; DTE – Data Terminal Equipment), adatcsatornák végberendezéséhez (AKD; DCE - Data Communication Equipment). Egy számítógép, nyomtató, plotter és egyéb perifériák működhetnek ADF-ként. A modem általában az ADC szerepét tölti be. A csatlakozás végső célja két ADF eszköz csatlakoztatása. A teljes csatlakozási rajz az ábrán látható. 2.3. Az interfész lehetővé teszi a távoli kommunikációs csatorna egy pár ADF eszközzel történő megszüntetését az eszközök közvetlen csatlakoztatásával nullmodemkábellel (2.4. ábra).

A szabvány leírja az interfészvezérlő jeleket, az adatátvitelt, az elektromos interfészt és a csatlakozó típusokat. A szabvány aszinkron és szinkron cseremódokat biztosít, de csak a COM portok támogatják aszinkron mód. Funkcionálisan RS-232C egyenértékű a CCITT V.24/V.28 szabvánnyal és a C2 interfésszel, de eltérő jelnevekkel rendelkeznek.

2.2.1. Elektromos interfész

Standard RS-232C egyvégű adókat és vevőket használ - a jelet közös vezetékhez viszonyítva továbbítják - áramköri földelést (más interfészeknél szimmetrikus differenciáljeleket használnak - pl. RS-422). Felület NEM BIZTOSÍT GALVÁNIKUS SZIGETELÉST eszközöket. Egy logikai megfelel a feszültségnek vevő bemenet a -12...-3 V tartományban. Vezérlő jelvezetékeknél ezt az állapotot ún ON("engedélyezve"), soros adatvonalak esetén - MARK. A logikai nulla a +3...+12 V tartománynak felel meg. Vezérlő jelvezetékeknél az állapot ún. LE("ki"), és soros adatvonalak esetén - TÉR. A -3...+3 V tartomány egy holtzóna, amely a vevő hiszterézisét okozza: a vonal állapota csak a küszöb átlépése után tekinthető megváltozottnak (2.5. ábra). A jelszinteknek a távadó kimenetein -12...-5 V és +5...+12 V tartományban kell lenniük ahhoz, hogy egy, illetve nulla legyen. A csatlakoztatott eszközök áramköri földelése (SG) közötti potenciálkülönbségnek kisebbnek kell lennie, mint 2 V, nagyobb potenciálkülönbség esetén a jelek helytelen érzékelése fordulhat elő. Az interfész feltételezi a jelenlétet VÉDŐ FÖLDELÉS csatlakoztatott eszközök esetén, ha mindkettő hálózatról táplálkozik ACés túlfeszültségvédőkkel rendelkeznek.

Interfész kábelek csatlakoztatása és leválasztásaönjáró eszközöket kell készíteni amikor az áram ki van kapcsolva. Ellenkező esetben az eszközök egyenetlen potenciálkülönbsége a kapcsoláskor a kimeneti vagy bemeneti (ami veszélyesebb) interfészáramkörökre vonatkozhat, és károsíthatja a mikroáramköröket.

Interfészhez RS-232C speciálisan előállított puffervevő mikroáramkörök (hiszterézissel és bipoláris jeladóval). Ha nem tartják be a földelési és kapcsolási szabályokat, általában ők válnak a „pirotechnikai” hatások első áldozataivá. Néha „kiságyakba” helyezik őket, ami megkönnyíti a cserét. Jelkondicionáló chipek kivezetése RS-232Cábrán látható. 2.6. A pufferáramkörök gyakran közvetlenül az interfész LSI-kbe vannak beépítve. Ez csökkenti a termék költségét, helyet takarít meg a táblán, de baleset esetén nagy anyagi veszteséggel jár. Nem valószínű, hogy az interfész mikroáramkörök megsérülnek a jeláramkörök rövidre zárása miatt: áram rövidzár jeladók általában nem haladják meg a 20 mA-t.

Standard RS-232C szabályozza használt csatlakozók típusai.

A felszerelésen ADF(COM portokon is) szokás telepíteni villák(férfi - "apa") DB-25P vagy egy kompaktabb változat - DB-9P. A kilenc tűs csatlakozók nem rendelkeznek érintkezőkkel a szinkron üzemmódhoz szükséges további jelekhez (a legtöbb 25 tűs csatlakozó nem használja ezeket a érintkezőket).

A felszerelésen AKD(modemek) telepítse aljzatok(nő - "anya") DB-25Swm DB-9S.

Ez a szabály feltételezi, hogy a csatlakozók AKD csatlakozókra csatlakoztatható ADF közvetlenül vagy adapteren keresztül „egyenes” kábelek aljzattal és csatlakozóval, amelyben az érintkezők „egy az egyhez” vannak kötve. Az adapterkábelek lehetnek 9-25 tűs csatlakozók adapterei is (2.7. ábra).

Ha a berendezés ADF modemek nélkül csatlakozik, akkor a készülék csatlakozói (dugói) csatlakoznak egymáshoz null modem kábel(Zero-modem vagy Z-modem), mindkét végén aljzatokkal, amelyek érintkezői az ábrán látható diagramok egyike szerint vannak keresztben csatlakoztatva. 2.8.

Ha bármilyen eszközön ADF aljzat van felszerelve - ez majdnem 100%-os jele annak, hogy egyenes kábellel kell egy másik eszközhöz csatlakoztatni, hasonlóan a modem csatlakozókábeléhez. Az aljzat általában azokra az eszközökre van telepítve, amelyek rendelkeznek távoli kapcsolat modemen keresztül nem biztosított.

táblázatban A 2.1 mutatja a COM port csatlakozóinak (és minden egyéb berendezésnek) a célját ADF). A DB-25S csatlakozó érintkezőit az EIA/TIA-232-E szabvány, a DB-9S csatlakozót az EIA/TIA-574 szabvány határozza meg. Modemeknél az áramkörök és érintkezők neve megegyezik, de a jelek szerepe (bemenet-kimenet) felcserélődik.

A jelek részhalmaza RS-232C, az aszinkron móddal kapcsolatban a PC COM portja szempontjából fogjuk megvizsgálni. Emlékeztetni kell arra, hogy a jel aktív állapota („be”) és logikai egység a továbbított adatok megfelelnek negatív potenciál(-3 V alatt) interfész jel, és az állapot „kikapcsolva” és logikai nulla - pozitív(+3 V felett). Az interfész jelek rendeltetését a táblázat tartalmazza. 2.2.

1* - 8 bites többkártyás kábel.

2* - 16 bites multikártyák és alaplapi portok kábele. 3* - opció az alaplapok portkábeleihez. 4* - széles kábel a 25 tűs csatlakozóhoz.

2.2.2. Adatfolyam szabályozás

Az adatáramlás szabályozására (Flow Control) két protokollopció használható - hardver és szoftver. Néha az áramlásszabályozást összekeverik a kézfogással, de ezek különböző módszerek ugyanannak a célnak az elérésére – az átviteli és vételi sebesség összehangolására. Kézfogás(Kézfogás) egy értesítés küldése arról, hogy egy tétel érkezett közben menetvezérlésértesítés küldésével jár az utólagos adatfogadás lehetetlenségéről.

Hardver Flow Control Protocol Az RTS/CTS (Hardware Flow Control) a CTS jelet használja, amely lehetővé teszi az adatátvitel leállítását, ha a vevő nem áll készen a vételre (2.9. ábra). Az adó csak akkor „engedi fel” a következő bájtot, ha a CTS vonal be van kapcsolva. Lehetetlen késleltetni a már megkezdett bájtot CTS-jellel (ez garantálja a csomag integritását). A hardveres protokoll biztosítja az adó leggyorsabb reagálását a vevő állapotára. Az aszinkron adó-vevő mikroáramkörök legalább két regiszterrel rendelkeznek a vevő részben -

shifting, a következő csomag fogadására, és tárolásra, amelyből a fogadott bájt beolvasásra kerül. Ez lehetővé teszi, hogy adatvesztés nélkül megvalósítsa az adatcserét hardveres protokoll használatával.

A hardverprotokoll kényelmesen használható nyomtatók és plotterek csatlakoztatásakor, ha támogatják (2.10. ábra). Ha két számítógépet közvetlenül (modemek nélkül) csatlakoztat, a hardverprotokoll megköveteli az RTS - CTS vonalak keresztkapcsolatát.

Ha a hardverprotokoll nem használatos, az adó terminálnak „be” állapotban kell lennie a CTS vonalon az RTS - CTS jumper használatával. Ellenkező esetben az adó „néma” lesz.

Szoftverfolyam-vezérlő protokoll XON/XOFF kétirányú adatátviteli csatorna jelenlétét feltételezi. A protokoll a következőképpen működik: ha az adatot fogadó eszköz olyan okokat észlel, amelyek miatt nem tudja tovább fogadni azokat, bájt karaktert küld a fordított soros csatornán XOFF(13 óra). Az ellenkező eszköz, miután megkapta ezt a karaktert, szünetelteti az átvitelt. Amikor a fogadó eszköz ismét készen áll az adatok fogadására, elküldi a karaktert

XON(llh), amelynek vétele után a másik eszköz folytatja az adást. Az adó válaszideje a vevő állapotának megváltozására a hardveres protokollhoz képest legalább a szimbólumátvitel idejével megnő. (XON vagy XOFF) plusz az adó program reakcióideje egy szimbólum fogadására (2.11. ábra). Ebből következik, hogy veszteségmentes adatot csak az a vevő tud fogadni, amelyik rendelkezik egy további pufferrel a vett adatokból, és ennek elérhetetlenségét előre jelzi (a pufferben van szabad hely).

A szoftverprotokoll előnye, hogy nincs szükség interfészvezérlő jelek továbbítására – a kétirányú kommunikációhoz szükséges minimális kábel csak 3 vezetékből állhat (lásd 2.8a. ábra). Hátránya a pufferigény és a hosszabb válaszidő mellett (a csatorna általános teljesítményének csökkenése a jelvárás miatt XON), a teljes duplex cseremód megvalósításának bonyolultsága. Ebben az esetben folyamvezérlő karaktereket kell kivonni (és feldolgozni) a vett adatfolyamból, ami korlátozza a továbbított karakterkészletet. Minimális kábelopció nyomtató (plotter) protokollhoz való csatlakoztatásához XON/XOFFábrán látható. 2.12.

A két közös szabványos protokollon kívül, amelyeket a PU és az operációs rendszer is támogat, továbbiak is vannak. Egyes soros plotterek szoftveres vezérlést használnak, de nem küldenek szabványos karaktereket. XON/XOFF A szavak(ASCII karakterláncok). Ez a csere szinten van rendszer támogatás Gyakorlatilag nincs protokoll támogatás (ezek a plotterek közvetlenül „beszélnek” az alkalmazási programmal). Természetesen írhat egy COM port illesztőprogramot (interceptor INT 14 óra), de egy kimeneti eszköz szöveges üzeneteinek feldolgozásának szükségessége általában nem izgatja a rendszerprogramozót. A csatlakozókábel megegyezik az ábrán láthatóval. 2.12.

2.3. Aktuális hurok interfész

Gyakori soros interfész opció az áramhurok. Ebben az elektromos jel nem a közös vezetékhez viszonyított feszültségszint, hanem jelenlegi a vevőt és az adót összekötő kétvezetékes vezetékben. A logikai egyes (a „bekapcsolt” állapot) 20 mA áram áramlásának, a logikai nulla pedig az áram hiányának felel meg. A jelek ilyen ábrázolása a leírt aszinkron küldési formátumhoz lehetővé teszi a vonaltörés észlelését - a vevő észreveszi a stopbit hiányát (a vonaltörés állandó logikai nullaként működik).

Az áramhurok általában magában foglalja galvanikus leválasztás vevő bemeneti áramkörei az eszköz áramköréből. Ebben az esetben a hurok áramforrása az adó (ezt az opciót aktív távadónak nevezzük). Lehetőség van a vevőről (aktív vevő) történő tápellátásra is, miközben az adó kimeneti kapcsolója galvanikusan is leválasztható az adó áramkörének többi részétől. Vannak egyszerűsített lehetőségek galvanikus leválasztás nélkül, de ez már az interfész elfajult esete. A galvanikusan leválasztott áramhurok akár több kilométeres távolságra is lehetővé teszi a jelek továbbítását. A távolságot a vezetékpár ellenállása és az interferencia mértéke határozza meg. Mivel az interfész minden jelhez egy pár vezetéket igényel, általában csak két interfész jelet használnak. Kétirányú kommunikáció esetén csak a továbbított és fogadott adatok jeleit használjuk, és szoftveres módszerrel szabályozzuk az áramlást. XON/XOFF. Ha nincs szükség kétirányú kommunikációra, akkor egy adatvonalat használnak, a visszatérő vonalat pedig a CTS jelhez (hardver protokoll) vagy a számláló adatvonalat (szoftver protokoll) az áramlásvezérléshez.

Konvertálja a jeleket RS-232C segítségével az aktuális hurokba egyszerű séma(2.13. ábra). Itt a nyomtató áramhurkon keresztül egy hardveres áramlásszabályozással rendelkező COM-porthoz csatlakozik. A COM port bemeneti jeleihez szükséges bipoláris jel eléréséhez a tápellátást az interfész biztosítja.

Megfelelő szoftverrel egyetlen áramhurok kétirányú félduplex kommunikációt biztosíthat két eszköz között. Ebben az esetben minden vevőegység „hallja” mind a csatorna másik oldalán lévő adó jeleit, mind a saját adójának jeleit. A kommunikációs csomagok egyszerűen visszhangjelnek tekintik őket. A hibamentes vétel érdekében az adóknak felváltva kell működniük.

2.4. MIDI interfész

Hangszer digitális interfész MIDI(Musical Instrument Digital Interface) egy kétirányú soros aszinkron interfész 31,25 Kbps átviteli frekvenciával. Ez az 1983-ban kifejlesztett interfész a számítógépek, szintetizátorok, felvevő és lejátszó eszközök, keverők, speciális effektusok és egyéb elektronikus zenei berendezések interfészeinek de facto szabványává vált.

A felület használ egy ilyen 10 mA-es hurok(esetleg 5 mA) a bemeneti áramkör galvanikus leválasztásával. Ez kiküszöböli a csatlakoztatott eszközök „áramköri földelésének” interfészkábelen keresztüli csatlakoztatását, kiküszöbölve az audioberendezések számára rendkívül nemkívánatos interferenciát. Az interferencia-interferencia csökkentése úgy is elérhető, hogy olyan átviteli frekvenciát választunk, amely egybeesik a digitális hangrögzítésben alkalmazott kvantálási frekvenciák egyikével.

Aszinkron küldés startbitet, 8 információs bitet és 1 stopbitet tartalmaz, paritásszabályozás nincs. A küldés legjelentősebb része a „parancs/adat” jel. A nulla értéke hét bitnyi adat jelenlétét jelzi alacsony sorrendben. Ha az érték egy, a bitek tartalmazzák parancskód,és a bitek azok csatorna száma. A parancsok egy adott csatornához szólhatnak, vagy cím nélkül is sugározhatók. Az utolsó csoportba tartoznak a start, stop és időbélyegző parancsok, amelyek biztosítják az eszközök szinkronizálását (szinkronizációs rendszer MIDI szinkronÉs MTS – MIDI időkód).

Az interfész háromféle portot határoz meg: MIDI-In, MIDI-Out nMIDI-Thru.

MIDI-In port a „10 mA áramhurok” interfész bemenete, galvanikusan elválasztva a vevőtől egy optocsatolóval, amelynek sebessége nem lehet rosszabb, mint 2 μs. A készülék ezen a bemeneten figyeli az információáramlást, és reagál a neki címzett parancsokra és adatokra.

MIDI-Out port a készülék áramköréhez galvanikusan csatlakoztatott 10 mA-es áramforrás kimenete. A korlátozó ellenállások védik a kimeneti áramköröket a testzárlat vagy az 5 V-os forrás által okozott sérülésektől. Az eszközről érkező információáramlás a kimenetre kerül. Az adatfolyam lefordított bemeneti adatfolyamot is tartalmazhat.

MIDI-Thru átmenő port(opcionális) a bemeneti jel továbbítására szolgál.

A használt csatlakozók 5 tűs DIN csatlakozók, amelyek a háztartási audioberendezésekben elterjedtek. Minden készülék aljzattal és dugós kábelekkel van felszerelve. Minden MIDI csatlakozó kábel egységes (2.14. ábra). 2. érintkező - kábel árnyékolása - csak az adó oldalán csatlakozik a közös vezetékhez (a csatlakozókon MIDI OutÉs MIDI Thru).

Eltérések vannak a csatlakozók melletti be- és kimenetek jelölésében. Egyes gyártók „In” vagy „Out”-t írnak az adott eszköz csatlakozójának funkciójának megfelelően (és ez így van), majd bármelyik kábel „In” és „Out”-t csatlakozik. Mások úgy vélik, hogy az aláírásnak jeleznie kell a csatlakoztatott eszköz funkcióját. Ezután a kábel csatlakoztatja az „In” – „In” és „Out” – „Out” feliratú csatlakozókat.

Az interfész lehetővé teszi akár 16 eszközből álló csoport csatlakoztatását egy helyi hálózathoz. A topológiának be kell tartania a szabályt:

bejárat MIDI-In egy eszközt kell csatlakoztatni a kimenetre MIDI Out vagy MIDI Thru másik. A MIDI hálózat tervezésénél figyelembe kell venni az információáramlást és az eszközök kommunikációját. A vezérlőeszközöket - billentyűzeteket, szekvenszereket (lejátszás módban), szinkronizációs forrásokat - a vezéreltek előtt kell elhelyezni. Ha az eszközöknek kétirányú kommunikációra van szükségük, akkor gyűrűben csatlakoznak. Lehetőség van speciális multiplexerek használatára, amelyek lehetővé teszik több bemeneti adatfolyam logikai átkapcsolását egyetlen kimeneti adatfolyamba. A gyűrű elfajult esete két eszköz kétirányú kapcsolata. ábrán több csatlakozási lehetőség látható. 2.15.

PC-n a legtöbb hangadapteren elérhető a MIDI-port, ennek jelei a játékadapter csatlakozójának nem használt érintkezőihez (12-es és 15-ös) vannak irányítva. A MIDI eszközök csatlakoztatásához szükséges adapter, az „áramhurok” interfész megvalósítása. Az adaptert általában egy speciális kábelbe építik be, melynek diagramja a 2. ábrán látható. 2.16. Egyes PC-modellek beépített adapterekkel és szabványos 5 tűs MIDI csatlakozókkal rendelkeznek.

PC-n a MIDI interfész a vezérlővel kompatibilis portokat használ MPU-401(Roland) UART módban. I/O térben MPU-401 két szomszédos címet foglal el MPU(általában 330 óra) és MPU+1:

Kikötő ADAT(cím MPU+0) - a MIDI interfészen keresztül továbbított és vett bájtok rögzítése és olvasása. Kikötő ÁLLAPOT/PARANCS(cím MPU+1) -állapot olvasási / írási parancsok (írás - csak intelligens módhoz). A következő bitek vannak meghatározva az állapotbájtban:

7. bit - DSR(Data Set Ready) - készenlét (DSR-0) olvasni kapott adatokat. A bit "I"-re van állítva, ha az összes vett bájt kiolvasásra került az adatregiszterből.

6. bit - DRR(Data Ready Ready) – készenlét (DRR=0) UART az adat- vagy parancsregiszterbe írásához. Az írásra kész állapot nem lép fel, ha a vevőnek van olvasatlan adatbájtja.

Egyes alaplapok LSI interfész vezérlőket használnak, amelyekben a COM porthoz használt UART BIOS SETUP-on keresztül történő konfigurálással MIDI port módba kapcsolható.

Nagyon ajánljuk a vele való találkozást. Ott sok új barátra lelhetsz. Ezenkívül ez a leggyorsabb és leghatékonyabb módja a projektadminisztrátorokkal való kapcsolatfelvételnek. A víruskereső frissítések szakasza továbbra is működik – mindig naprakész ingyenes frissítések Dr Web és NOD számára. Nem volt időd elolvasni valamit? A ticker teljes tartalma ezen a linken érhető el.

Működés LPT porttal Win NT/2000/XP alatt

LPT port (L ine P rin T er) egy párhuzamos interfész port, amelyet eredetileg nyomtató csatlakoztatására hoztak létre. A BIOS támogatja az LPT portot, amely szükséges a kimenet megszervezéséhez a Centronics interfészen keresztül. A port címtere a &H378-&H37F tartományt foglalja el

Az LPT portnak 12 kimenete és 5 bemeneti vonala van. Az ilyen meglehetősen nagy számú vonal lehetővé teszi olyan egyszerű berendezések csatlakoztatását a porthoz, amelyeknek nincs is saját mikrokontrollerük. Ezért ezt a portot az LPT interfésszel rendelkező nyomtatók eltűnése ellenére aktívan használják egyszerű memóriachip-programozók, JTAG interfészek villogó (szoftvercsere) műholdvevők, DVD-lejátszók és egyéb elektronikus berendezések csatlakoztatására. Az LPT port a modderek körében is népszerű, mivel lehetővé teszi az LCD-kijelzők csatlakoztatását a számítógéphez anélkül, hogy bonyolult interfészkártyákat készítene.

A Windows 2000/XP nem teszi lehetővé, hogy az alkalmazások közvetlenül hozzáférjenek az I/O portokhoz. Ehhez egy KERNEL módban (operációs rendszer kernel módban) futó illesztőprogramot kell használni.

Az I/O portokhoz való hozzáférés korlátozása a gyakori alkalmazásprogramok számára (felhasználói módban fut) stabilabbá teszi az operációs rendszert. Bár másrészt senki sem akadályozza meg a programozót abban, hogy olyan illesztőprogramot írjon, amely hozzáfér a portokhoz.

Érdekes módon az Intel x86 processzorokhoz illesztőprogramot írhat két alapvetően eltérő megközelítés egyikével. Az első lehetőség az, hogy az illesztőprogram maga éri el a portokat, és az alkalmazásprogram csak azt mondja meg az illesztőprogramnak, hogy mit tegyen. Ez a lehetőség általában szabványos és előnyben részesített.

A probléma megoldására négy népszerű illesztőprogram-beállítás létezik, amelyek lehetővé teszik az alkalmazási programok számára, hogy hozzáférjenek az I/O portokhoz: illesztőprogram DLPortIO, sofőr UserPort, sofőr GiveIO.sis, sofőr Port95nt.

Mind a négy lehetőség szinte egyenértékű.

DLPortIO illesztőprogram

DLportIO - port hozzáférési illesztőprogram a csomagból DriverLINX a Scientific Software Tools, Inc.-től. (http://www.sstnet.com) rövidített formában (leírás és szükségtelen dokumentáció nélkül). Az LCD kijelzők karbantartási programjainak normál működéséhez ajánljuk ezt a meghajtó opciót.

Maga az illesztőprogram két részből áll:
. DLPortIO.dll - Win32 DLL, amely hardver I/O-t és
. DLPortIO.sys - illesztőprogram a WinNT-hez, operációs rendszer kernel módban fut (Win95/98 esetén nem szükséges)

Az illesztőprogram-telepítő csomagban ezen a két komponensen kívül található az Install.exe fájl is, amely a fent említett két Windows illesztőprogramot áthelyezi a Windows illesztőprogram mappájába, és regisztrálja őket a rendszerben.

Erről a driverről nem lehet többet írni. Nincs szükség beállításra. Letöltve, telepítve, használni. Ne felejtse el megnézni a cikk végét, és olvassa el az LPT port működőképességének biztosításáról.

A telepítés egyszerű - futtassa az Install.exe fájlt, és telepítse. A telepítés befejezése után keresse meg a C:\Windows\System32\drivers mappát, és ellenőrizze, hogy van-e két illesztőprogram-fájl (DLPortIO.sys és DLPortIO.dll). Ha azt látjuk, hogy ezeket a fájlokat nem másoltuk át, kivesszük a telepítőcsomagból, és manuálisan másoljuk. Ne aggódjon, semmi rossz nem fog történni a számítógépével. Újraindítjuk a számítógépet, és az LPT porttal dolgozunk.

Ha a berendezéssel végzett manipulációk következtében hirtelen a következő üzenetet kapja az illesztőprogramtól: „A dlportio.sys eszközillesztő nincs betöltve, ennek nincs hatása”, ne essen pánikba. Ezt a problémát a következőképpen javítják:
. Indítsa el a regedit-et.
. Az anyakönyvi fiókhoz megyünk HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\.
. A dlportio mappában módosítsa a paraméter értékét Indul-on 1 .
. Indítsa újra a számítógépet.

UserPort illesztőprogram

Driver UserPort megnyitja a hozzáférést a Win NT/2000/XP portjaihoz a programok számára. Az LPT port illesztőprogramjának ezt a verzióját leggyakrabban a programozókkal és JTAG-okkal dolgozó „technikusok” használják, mivel az illesztőprogramnak van legalább néhány konfigurációs beállítása. Az LCD kijelzők karbantartási programjainak működtetésére is alkalmas.

Az illesztőprogram-archívum három fájlt tartalmaz:
. UserPort.sys - illesztőprogram a WinNT-hez, operációs rendszer kernel módban fut,
. A UserPort.exe egy program az illesztőprogram konfigurálására és
. UserPort.pdf - leíró fájl.

UserPort telepítés:
. 1. Csomagolja ki az archívumot egy külön mappába.
. 2. Másolja a UserPort.sys fájlt a C:\Windows\System32\drivers mappába

UserPort beállítása:
. Futtassa a UserPort.exe fájlt.
. Egy 2 ablakos panel jelenik meg előttünk.

A bal oldali ablak a DOS-ablakban futó programra vonatkozik, a jobb oldali a DOS-ablakban futó programra teljes képernyő. Alapértelmezés szerint LPT portszámokat tartalmaznak - mindegyik eltávolítható az "Eltávolítás" gombbal. Mindkét ablakban meg kell adnia a használni kívánt portszámokat.

Az illesztőprogramból a legtöbb programozóhoz, JTAG-hoz és megjelenítési szolgáltatáshoz való használathoz adja hozzá a következő paramétereket a bal oszlophoz:
378 , 379 És 37A Mert LPT1
278 , 279 És 27A Mert LPT2(Ha az LPT port címe újra van rendelve a BIOS-ban).

Hadd magyarázzam el, mit jelentenek a számok. 0x378- ez a port címe.
. Cím 0x378 hívott alapvetőés írásra és olvasásra használják adat a portra és onnan az adatbuszon keresztül D0-D7.
. Cím 0x379 (alap+1) szánt biteket olvasniállapotát az LPT porthoz csatlakoztatott eszközről.
. Cím 0x37A (alap+2) számára szolgál bit felvétel az LPT portra csatlakoztatott eszköz vezérlése.

Add hozzá így:
0x378-0x378
0x37A-0x37A



Portcímeket kell hozzáadnia a listához a beviteli ablakon keresztül és a "Hozzáadás" gombbal. Cím 0x379 leggyakrabban nincs rá szükség, és elhagyható, mivel erre való biteket olvasniállapotát az LPT-porthoz csatlakoztatott eszközről, és a legtöbb eszköz (különösen a programozók, JTAG-ok és LCD-jelzők) nem generál állapotjeleket, ellenkezőleg, megadhatja a rendszer által kiosztott teljes címtartományt az LPT port 0x378-0x37F.

Menjünk a Vezérlőpult, Rendszer, válassza a Berendezés fület, eszközkezelő, lépjen a Portok (COM és LPT) elemre, és nézze meg annak az LPT portnak a tulajdonságait, amelyen keresztül kapcsolatot szeretne létesíteni. A Tulajdonságokban nyissa meg az Erőforrások lapot, és nézze meg a paraméter értékét Bemeneti/kimeneti (I/O) tartomány. (Általában Windows XP esetén egyenlő 378-37F)

A címlista létrehozása után kattintson a "Start" gombra, az illesztőprogram elindul, és megjelenik a következő üzenet:



Ezután kattintson a "Frissítés" gombra, az illesztőprogram regisztrálva lesz a rendszerben, majd "Kilépés". Természetesen nem kell megnyomni a "Stop" gombot, amíg az illesztőprogramot használjuk.

Ha a "Frissítés" gombra kattintva a rendszer újraindul, meg kell próbálnia elindítani az illesztőprogram-regisztrációt a rendszerben rendszergazdai jogosultságokkal, vagy meg kell próbálnia ideiglenesen letiltani a tűzfalat vagy a víruskeresőt, amely megakadályozhatja a rendszerfolyamatokkal való interferenciát. Ha valami nem működik, olvassa el a UserPort.pdf-et

A program futtatásával ellenőrizheti, hogy megjelent-e a hozzáférés a portokhoz "lpt-test.exe".

A program elindítása után egy ablak jelenik meg a következő tartalommal:



Az „LPT port tesztelés alatt (XXXh cím)” üzenet hiánya és az azt követő sorok azt jelzik, hogy az illesztőprogram nem működik.

Ez a program egyszerűen különböző számokat küld az LPT port Dx adatregiszterébe és Ux vezérlőregiszterébe, majd beolvassa azokat. Az LPT port Sx állapotregisztere csak olvasható. A képernyőn megjelenik a tesztelt LPT port száma és címe. Ha a port kifogástalan, akkor a Dx és Ux regiszterekre nem szabad üzenetet kiadni.



LPT-TEST v1.03 1995-2003 Copyright (C) S.B.Alemanov. Moszkva "BINAR".
A tesztelés során nem szabad perifériás eszközöket csatlakoztatni a portokhoz.
Dx - reg. adatok (out), Ux - reg. vezérlés (out), Sx - reg. állapot (inp).

Az LPT1 port tesztelése folyamatban van (378h cím)
2. érintkező (D0) - nincs "1"
3. érintkező (D1) - nincs "1"
4. érintkező (D2) - nincs "1"
5. tű (D3) - nem "1"
6. tű (D4) - nem "1"
7. tű (D5) - nem "1"
8. tű (D6) - nem "1"
9. tű (D7) - nem "1"
1. kapcsolat (U0) - nincs "1"
14. tű (U1) - nem "1"
17. tű (U3) - nem "1"
1. kapcsolat (U0) - nincs "0"
14. tű (U1) - nincs "0"
17. érintkező (U3) - nincs "0"
15. érintkező (S3) - nincs "0"


Ha a Dx vagy Ux regiszter hibás, akkor a „no 0” vagy a „no 1” üzenet jelenik meg, és megjelenik az LPT csatlakozó pin száma (az ezen a tűn lévő jelek oszcilloszkóppal megtekinthetők). Az Sx állapotregiszter bemenete lehet "0" vagy "1", de általában, ha semmi sem csatlakozik az LPT porthoz, minden állapotregiszter bemeneten "1" van. A „0” állapot megjelenése a regiszter bemenetén a bemenet megszakadásának jele lehet, ha korábban mindig „1” volt.
Egyes gépeken, ha az adatregiszter vagy vezérlőregiszter hibás, akkor az LPT porthoz való hozzáférés egyáltalán nem jelenik meg. Úgy tűnik, amikor bekapcsolja a számítógépet, a BIOS teszteli az LPT portot, és ha hibás, letiltja.

Ha problémák merülnek fel, lehetséges, hogy egyes illesztőprogramok zavarják a működést azáltal, hogy időszakonként impulzusokat küldenek az LPT portra (ez egy oszcilloszkóppal látható). Például leválaszthatja az LPT-portot a nyomtató beállításainál:
kapcsolja ki az LPT1: Nyomtatóportot
Fájl engedélyezése: Nyomtatás fájlba

Miután minden probléma megoldódott és a teszt sikeresen lezajlott, meg kell jelennie a hozzáférésnek a portokhoz, és futtathat egy programot, amely az LPT-portot használja. Ellenkező esetben az ilyen gépen lévő porthoz csatlakoztatott eszköz nem fog működni.

GiveIO.sys illesztőprogram

1996-ban Dale Roberts amerikai programozó kísérletsorozatot végzett, amelynek eredménye a vezető GiveIO.sys. Eddig ez az illesztőprogram maradt az egyik népszerű eszköz, amely lehetővé teszi az alkalmazások számára, hogy hozzáférjenek az I/O portokhoz.

Maga az illesztőprogram szerzője erősen ajánlja, hogy ezt az illesztőprogramot csak hibakeresési célokra használja. Az alkalmazásprogram végleges verziójának ahelyett, hogy magának az I/O-portokhoz férne hozzá, ezt a feladatot egy kifejezetten erre a célra írt illesztőprogramra kell bíznia. Az illesztőprogramnak "helyesen" kell viselkednie, ellenőrizve, hogy az eszközt már használja-e valamilyen más alkalmazás.

Ha azonban teljesen biztos abban, hogy rajtad kívül senki sem használja a szükséges I/O portokat (például nincs nyomtatója csatlakoztatva az LPT-hez), nyugodtan használhatja a GiveIO.sys illesztőprogramot.

Illesztőprogram telepítése:

1. Töltse le az archívumot, csomagolja ki és másolja a GiveIO.sys fájlt a C:\Windows\System32\Drivers könyvtárba (feltételezve, hogy a Windows a C:\Windows könyvtárba van telepítve).
. 2. Futtassa az install.reg fájlt. A következő üzenet jelenik meg a képernyőn:


. 3. Igennel válaszolunk. Megjelenik egy üzenet, amely jelzi, hogy az adatok sikeresen bekerültek a rendszerleíró adatbázisba. Ha szeretné, ezt ellenőrizheti. Elindítjuk a regedit.exe rendszerleíró adatbázis-szerkesztőt és az ágban HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\giveio Ellenőrizzük a következő rekordok meglétét:


. 4. Indítsa újra a számítógépet, és ellenőrizze a programok működését az illesztőprogram segítségével.

Driver GiveIO.sys az emberek aktívan használják, és idővel megjelentek egyéb telepítési lehetőségek.

Például - sofőr GiveIO.sys ha van egy "hardverinformációt" tartalmazó fájl GiveIO.inf a "Hardvertelepítés" kisalkalmazáson keresztül telepíthető.




Megmutatjuk a GiveIO.sys illesztőprogramot az operációs rendszernek, hogy az higgyen a "GiveIO" hardver létezésében.

Töltse le az illesztőprogram-telepítési opcióhoz tartozó fájlkészletet GiveIO.sys(giveio_sys_v2.rar - 78 kb). Az archívum tartalmazza a GiveIO.sys és GiveIO.inf fájlokat, valamint részletes utasításokat szerelési útmutató illusztrációkkal.

A „kézi” illesztőprogram-telepítés lehetőségei mellett a telepítőnek több olyan verziója is megjelent, amelyek automatikusan elvégzik a telepítést.

Töltse le a fájlkészletet az automatikus illesztőprogram-telepítéshez GiveIO.sys(giveio_sys_install.rar - 28 kb). Az archívum tartalmazza a GiveIO.sys és instdrv.exe fájlokat, valamint a remove-giveio.cmd fájlt, amellyel az illesztőprogram GiveIO.sys eltávolítható a rendszerből.

Port95nt illesztőprogram

A " kifejezés sofőr A Port95nt" itt nem lesz teljesen helyes. Lényegében ugyanaz az illesztőprogram DLPortIO a csomagból DriverLINX-tól Scientific Software Tools, Inc., csak teljes verzióban, pár portkezelő segédprogrammal, leírással és sok példával programozóknak. Az átlagfelhasználónak semmi haszna nincs a további komponensekből, a DLPortIO.sys és DLPortIO.dll illesztőprogram-összetevők pedig pontosan ugyanazok, mint a rövidített verzióban.

A Port95nt-t két okból említettem meghajtóként. Az első az interneten található LPT-port-illesztőprogramokra vonatkozó hivatkozások listája.

A második ok az, hogy bizonyos esetekben problémák adódhatnak a DLPortIO rövidített verziójának WinXP alatti telepítésével. Általában, de nem gyakran, ez történik a WinXP lecsupaszított "szerzői" buildjeiben. Ebben az esetben elviheti teljes verzió telepítő (1,5 MB). Bár véleményem szerint gyorsabb lesz manuálisan a DLPortIO.sys-t és a DLPortIO.dll-t a kívánt mappába helyezni, mint egy olyan telepítő kiválasztásával bajlódni, amelyik ezt meg tudja tenni.

További intézkedések

A fent említett illesztőprogramok egyikének telepítése mellett az LPT port normál működéséhez WinXP OS alatt a rendszerleíró adatbázist egy REG fájl segítségével kell szerkesztenie. xp_stop_polling.reg(xp_stop_polling.rar - 0,48 kb)

WinXP alatt az LPT portot használó eszközök néha instabilok. Az ilyen hibák oka a Windows Plug-and-Play (PnP) alrendszere lehet, amely időszakonként lekérdezi az LPT-t a csatlakoztatott eszközök észlelése érdekében. Ez a lekérdezés a rendszer indításakor történik, de előfordulhat működés közben is. Sajnos a DLportIO.sys illesztőprogram és más illesztőprogram-beállítások nem blokkolják az LPT hozzáférést más programoktól, amikor ennek az illesztőprogramnak a kliensportjával dolgozik, és a PnP alrendszer biztos abban, hogy a port nem foglalt, hozzáfér, és megzavarja az illesztőprogram működését. külső eszközök. A REG fájl a probléma megoldására szolgál. xp_stop_polling.reg. Ez a fájl a rendszerleíró adatbázisba van írva Windows kulcs, amely tiltja az ilyen lekérdezést a rendszer futása közben.

Az illesztőprogram telepítése és a programok portjához való egyidejű hozzáférés korlátozása mellett a hardver kompatibilitás és az LPT porttal rendelkező berendezések normál működésének biztosítása érdekében be kell állítani helyes címet És port működési mód(„Normál”, SPP vagy EPP, de nem ECP).

A következő paraméterek konfigurálhatók a BIOS Setup segítségével:

Alapcím, amely lehet 378h, 278h és 3BCh. Az inicializálás során a BIOS pontosan ebben a sorrendben ellenőrzi a portok meglétét cím szerint, és ennek megfelelően LPT1, LPT2, LPT3 logikai neveket rendel az észlelt portokhoz. A 3BCh címen egy portadapter található az MDA vagy HGC kártyán (a modern videokártyák elődjei). A legtöbb port alapértelmezés szerint 378h címre van beállítva, és átkapcsolható 278h-ra.

A használt megszakítási kérelmet, az IRQ7-et általában az LPT1-hez, az IRQ5-öt az LPT2-hez használják. Sok asztali alkalmazásban nem használják a nyomtató megszakításait, és ez a szűkös számítógépes erőforrás megtakarítható. Az ECP (Fast Centronics) nagysebességű módok használatakor azonban a megszakításos működés jelentősen javíthatja a teljesítményt és csökkentheti a processzorterhelést.

Ugyanakkor az ECP mód nem használható olyan eszközökkel, amelyek szűk időzítést igényelnek (programozók és JTAG interfészek).

Befejezésül egy kicsit a terminológiáról:

. SPP(Standard Parallel Port - szabványos párhuzamos port). Gyakran a megértés egyszerűsítése érdekében a BIOS-ban ezt a kifejezést " Normál".
. EPP(Enhanced Parallel Port) - nagy sebességű kétirányú interfész opció. Egyes jelek rendeltetése módosult, több logikai eszköz megcímzésének és 8 bites adatbevitelének lehetősége, valamint 16 bájtos hardveres FIFO puffer került bevezetésre. Maximális sebesség csere - akár 2 Mb/s.
. ECP(Enhanced Capability Port) – az EPP intelligens változata. Bevezették a továbbított információk parancsokra és adatokra történő szétválasztásának lehetőségét, a DMA támogatását és a továbbított adatok RLE (Run-Length Encoding) módszerrel történő tömörítését.



Kapcsolódó kiadványok