Click here to load reader

Interfete Si Periferice

  • View
    25

  • Download
    2

Embed Size (px)

DESCRIPTION

interfete si periferice

Text of Interfete Si Periferice

CAPITOLUL 7COMANDA APLICATIILOR EXTERNE CU MICROCALCULATORUL PC

Conectarea diferitelor echipamente periferice la calculatorul PC, precum i monitorizarea, comanda i controlul unor aplicaii externe, industriale i domestice de catre PC se face utiliznd urmtoarele ci: interfaa paralel, interfaa serie, denumite n mod uzual porturile paralel i serie, interfaa USB precum i sloturile care permit conectarea direct pe magistralele de intrare / ieire, ISA i PCI. O scurt analiz comparativ a celor 4 soluii arat c: * portul paralel este foarte rspndit i asigur suficiente resurse pentru o gam larg de aplicaii, n sensul c ofer multe linii de date, comand i stare i vitez medie; mai are i avantajul c exist o mulime de plci cu aplicaii pentru portul paralel precum i software specific care pot fi folosite ca puncte de reper pentru crearea altor aplicaii; * portul serie este, de asemenea foarte rspndit, ofer mai puine resurse dect cel paralel (numr de linii mai mic, vitez mai mic) dar i pre de implementare mai mic i siguran n funcionare mare; mai are i avantajul c exist o mulime de plci cu aplicaii pentru portul serie precum i software specific care pot fi folosite ca puncte de reper pentru crearea altor aplicaii; * portul USB este relativ nou, ofer vitez mare i foarte mare, comparativ cu portul paralel, ofer posibilitatea de a conecta mai multe plci cu aplicaii pe acelai port al calculatorului dar protocolul USB este puin cunoscut i greu de implementat; * sloturile care permit conectarea direct pe magistralele de intrare / ieire, ISA i PCI, ofer vitez maxim, ntruct permit conectarea direct a plcilor cu aplicaii pe placa de baz a calculatorului dar aceast soluie cere deschiderea calculatorului i accesul direct pe placa de baz ceea ce impune o foarte bun cunoatere a plcii de baz, mai exact a magistralelor de intrare/ 'ieire iar, pe de alta parte, introduce un factor de risc n funcionarea calculatorului ntruct placa aplicaie poate afecta direct funcionarea acestuia Scopul acestui capitol este cunoaterea celor 4 ci prin care calculatorul PC poate comanda, controla i monitoriza aplicaii externe, ca urmare ele vor fi descrise n continuare.

7.1. Portul paralelAcest subcapitol descrie portul paralel al calculatorului PC. Vor fi descrise i aplicaii cu portul paralel. Accentul va fi pus pe utilizarea portului paralel sub sistemul de operare DOS. Exist mai multe echipamente periferice care se conecteaz la portul paralel: imprimante, scannere, uniti CD-ROM etc. precum i o gam larg de aplicaii externe, de comand, monitorizare i control. Conectarea la portul paralel al PC-ului se face prin intermediul unei cuple standard, de tip D, mam, cu 25 pini, situat n partea posterioar a calculatorului.

1

7.1.1.Standardizarea portului paralelDatorit intensei utilizri a portului paralel, datorit cerinelor mereu crescnde de performan pe care trebuie s le satisfac precum i datorit cerinelor productorilor de imprimante a aprut necesitatea standardizrii acestui port. Operaia a fost realizat de ctre standardul IEEE 1284, "Standard Signaling Method for a Bidirecional Parallel Interface for Personal Computer" care a aprut n martie 1994. Standardul descrie comunicarea de mare vitez, bidirecional, ntre un PC i un periferic, la o vitez de 50100 ori mai mare dect cea a portului paralel original, asigurnd totodat i compatibilitatea cu porturile paralele i imprimantele mai vechi, de dinainte de apariia standardului. Standardul IEEE 1284 definete n totalitate portul paralel al PC-ului. El prevede: * 5 moduri de transfer pentru date, * o metod pentru port i periferic pentru a determina modurile de transfer suportate precum i pentru a negocia, stabili, un anume mod, * caracteristicile interfeei fizice: cabluri, conectori, * caracteristicile interfeei electrice: amplificatoare de linie, receptoare, impedana liniei, terminatoare. Viteza mare oferit de porturile paralele conforme cu standardul 1284 nu era necesar atunci cnd la acest port erau conectate doar imprimante matriciale, echipamente lente i unidirecionale. Atunci, ns, cnd a fost necesar conectarea unor echipamente periferice mai rapide: imprimante laser, scannere, uniti CD-ROM, a devenit evident necesitatea unei viteze mai mari a portului. De asemenea, bidirecionalitatea cerut de unele echipamente periferice: scannere, uniti CD-ROM, precum i de multe aplicaii de comand i control a impus regndirea portului paralel. Aceste cerine au fost rezolvate de standardul IEEE 1284 n condiiile pstrrii compatibilitii totale cu porturile paralele i echipamentele periferice corespunztoare mai vechi.

7.1.2.Caracteristicile de baza ale portului paralelPortul paralel const din interfaa paralel i conectorul de 25 pini, tip D, mam, situat pe panoul posterior al calculatorului. Interfaa paralel const din totalitatea circuitelor i registrelor de comand, date i stare care asigur legtura ntre un echipament periferic sau o aplicaie extern i magistralele ISA sau PCI ale calculatorului. Fizic, interfaa paralel se poate afla pe o plac de extensie, la PC-urile mai vechi, sau pe placa de baz. la PC-urile mai noi. Ea este implementat prin circuite distincte, la PC-urile mai vechi, sau inclus ntr-un controler de 1/ E, la PC-urile mai noi. | La nivelul conectorului, portul paralel este alctuit din 17 linii de semnal i 8 linii de mas. Liniile de semnal sunt mprite n 3 grupe: de date, 8 linii, de control, 4 linii i de stare, 5 linii. n varianta original a portului paralel, liniile de date au fost prevzute pentru a transfera date ctre imprimant, ca urmare erau unidirecionale. In variantele ulterioare, aceste linii au devenit bidirecionale. Liniile de control au fost prevzute pentru dialog i control al imprimantei iar liniile de stare au fost prevzute pentru dialog i indicare a strii imprimantei. La variantele ulterioare, liniile de stare au fost folosite i pentru a transmite date ctre port. 2

Tabelul 7.1 prezint plasarea semnalelor la conectorul de 25 pini, de tip D, al portului paralel. Dimensiunile semnalelor corespund modului original de lucru al portului paralel, denumit uzual SPP ("Standard Parallel Port"). La celelalte moduri de lucru, definite de standardul 1284, aceleai semnale vor primi alte denumiri.Pin conector tip D 1 2 3 4 5 6 7 8 9 10

Semnal SPP

Direcie

Registru

Descriere

Inversare hardware

/Strobe DataO Datai Data2 Data3 Data4 Data5 Data6 Data7 /Ack

In/Out Out Out Out Out Out Out Out Out In

Control Data Data Data Data Data Data Data Data Stare

Activ la 0. Arat c pe liniile de date, datele sunt valide Linie de date Linie de date Linie de date Linie de date Linie de date Linie de date Linie de date Linia de date cea mai semnificativ Activ la 0. Arat c datele au fost preluate de periferic Activ la 1. Arat c imprimanta este ocupat i nu poate primi date Activ la 1. Arat lipsa hrtiei. Activ la 1. Arat c imprimanta este on line Activ la 0. Comand imprimanta s insereze automat un avans al hrtiei la fiecare revenire a capului de tiprire Activ la 0. Arata aparitia unei erori Activ la 0. Iniializeaz imprimanta Activ la 0. Indic imprimantei c este selectata Masa electric

Da

11 12 13

Busy PaperOut/ PaperEnd Select

In In In

Stare Stare Stare

Da

14

/Auto-Line feed

In/Out

Control

Da

15 16 17 18-25

/Error/ /Fault /Initialize /Select Printer/ /Select In Gnd

In In/Out In/Out -

Stare Control Control -

Da

Tabelul 7.1. Semnalele portului paralel "Inversare hardware" nseamn c interfaa portului inverseaz semnalul. Dac, ce exemplu, la intrarea Busy imprimanta plaseaz 1, atunci portul va citi semnalul ca find 0. n ceea ce privete semnalele de ieire inversate de hardware, ele trebuiesc negate prin program nainte de a fi trimise la port. 3

Standardul 1284 prevede 3 tipuri de conectori: de tip A, cel de 25 pini, cunoscut uzual sub numele de conector D, fig.7.1 ,a de tip B, un conector Centronics de 36 pini, existent la majoritatea imprimantelor cu jet sau laser, fig.7.1 .b, i de tip C, un conector tot. Centronics de 36 pini dar de dimensiuni mai mici dec: cel de tip B, fig.7.1 .c. a) de tip A (D) 13 1 14

25 b)de tip B

c) de tip C

Fig. 7.1. Conectorii prevzui de standardul IEEE 1284 Conectorul de tip C este cel recomandat pentru noile porturi paralele. Este mai mic ca celelalte tipuri, permite o prindere mai bun a cablului, are caracteristici electrice mai bune i, n plus, prevede 2 pini pentru 2 semnale suplimentare: Peripheral Logic High i Host Logic High. Totui, conectorul cel mai rspndit rmne, nc, cel de tip A. Acest conector se afl i pe panoul posterior al PC-ului. Semnalelor portului paralel le sunt asignate ranguri din registre din interfa. Toate modurile folosesc 3 registre, de baz, la care unele moduri adaug i altele Registrelor le corespund adrese de port din spaiul de 1/ E al PC-ului. Registrele sunt vzute de procesor ca blocuri contigue aflate la adrese succesive, pornind de la o adres de baz. BIOS-ul ("Basic Input/ Output System") sesizeaz existena ntr-un calculator a pn la 3 porturi paralele pe care le denumete LPT1, LPT2 i LPT3. Adresele de baz utilizate sunt: 3bch pentru portul paralel aflat pe plcile video, la PC-urile mai vechi sau, mai nou, pe plcile de baz, 378h pentru LPT1, n mod uzual i 278h pentru LPT2, n mod uzual. La pornirea calculatorului, BIOS-ul este cel care aloc porturilor paralele denumirile LPT. La nceput verific existena unui port paralel la adresa 3bch i dac il gsete i aloc denumirea LPT1. In continuare verific adresa 378h i dac gsete iacolo un port paralel atunci i aloc denumirea LPT2. Dac la adresa 3bch nu a gsit 4

un port paralel, atunci celui de la adresa 378h i aloc denumirea LPTl. Similar, este verificat i adresa 278h. Ca urmare, la adresa 3bch se poate afla doar portul paralel LPTl, la adresa 378h se pot afla LPT1 sau LPT2,iar la278h se pot afla LPT1,LPT2 sau LPT3. Exist ns i porturi paralele mai vechi la care pot fi setate denumirile LPTl, LPT2 sau LPT3 prin conexiuni. Intruct denumirile i adresele alocate porturilor paralele pot diferi de la un calculator la altul, este necesar stabilirea unor puncte de reper pentru utilizatori, adic pentru aceia care doresc s foloseasc portul paralel. Acestea sunt oferite de BIOS care ncarc, n RAM, adresele de baz alocate porturilor paralele la adrese fixe, tabelul 7.2.Adres fix 0000:0408 0000:040a 0000:040c Semnificaie Adres de baz pentru LPTl Adres de baz pentru LPT2 Adres de baz pentru LPT3

Tabelul 7.2. Adresele de baz din RAM care conin adresele de baz ale porturilor paralele In continuare vor fi descrise registrele de baz folosite de modurile de lucru. La adresa de baz, notat pe scurt cu Baz se afl registrul de date, numit i Port de Date, figura 7.2. Este un port unidirecional n modurile de lucru "Compatibility", Nibble" i bidirecional n modurile de lucru "Byte", "EPP" i "ECP". 7Data 7 Data6 Data 5 Data 4 Data 3 Data 2 Data 1

0Data 0

Fig.7.2. Portul de Date La adresa Baz + 1 se afl registrul de stare, numit i Port de Stare, figura 7.3. Cinci ranguri corespund la 5 linii de intrare (pinii 10 - 15 ai conectorului), un rang corespunde unei ntreruperi i 2 ranguri sunt rezervate. Rangurile notate cu * corespund unor semnale inversate hardware. Dac n rangul 2 se citete 1, nseamn c nu s-a generat ntrerupere. Dac n rangul 7 se citete 1, nseamn c la pinul de la conector aloarea semnalului Busy este 0. Portul de Stare poate fi doar citit. 7Busy* Ack PaperOut Selectln Error IRQ* Rez.

0Rez.

Fig.7.3. Portul de Stare La adresa Baz +2 se afl registrul de control, numit i Port de Control, figura 7.4. Rangurile 7 i 6 sunt nefolosite. Rangurile 5 i 4 sunt ranguri de control intern. Rangul 4 va valida generarea unei ntreruperi iar rangul 5 va valida modul bidirecional care permite transferul n ambele sensuri a 8 bii de date. Porturile paralele vechi nu suport acest mod. Pentru ca un asemenea port s suporte totui acest mod, va fi necesar Intervenia la nivelul hardware-ului portului. Rangurile 3-0 corespund la 4 semnale de control: Select Printer, Initialize, Auto Linefeed i /Strobe. Cele notate cu * sunt inversate hardware. Exist i posibilitatea ca aceste linii, normal de ieire s fie folosite ca intrri. Aceasta rezult din schema rangurilor corespondente din Portul de Control, fig.7.5. Notaia OC nseamn "Open Colector".

5

7 Nefol. Nefol.

0 /Strobe*Auto Line feed*

Initialize Printer Select Printer Enable Via Ack Line Enable Bi-Directional PortFig.7.4. Portul de Control Dup cum se observ din schem, ieirile acestor ranguri sunt cu colector n gol (exist, ns, i porturi la care aceste ieiri sunt TTL normale). Rezistena de tragere este de 4,7 k i poate fi pe placa portului, la periferic sau, mai rar, niciunde. n acest din urm caz va fi necesar plasarea n exteriorul portului a rezistenelor la +5 V, valoarea recomandat fiind de 4,7 k . Aceste rezistente nu vor afecta corecta funcionare a portuluiLinia Date, ieire, la 1 logic (>2,4V) Date, ieire, la 1 logic (2,4V) Control, ieire, la 0 logic ( B i care are la ambele capete conectori de tip A, cablul A > A. Nu este necesar existena tuturor celor 4 variante de conectori. Este posibil ca un echipament s aib cablul prins de el, ca urmare conectorii de tip B nu vor exista. Conectorii USB au 4 pini deoarece cablul USB este alctuit din 4 fire, fig. 7.55. Dou fire ale cablului transport data, sub forma unui semnal diferenial. In acest fel se asigur o rezisten mare la perturbaii. Celelalte 2 fire sunt alimentarea: +5 V DC i masa. n acest fel se ofer alimentare pentru toate echipamentele legate la cablu (pn la 0.5 W). In plus, acestea pot avea propria surs de tensiune.

V+ Data+ DataGrid Fig.7.55. Cablu USB

V+ Data+ DataGrid

Acest cablu permite transfer cu 2 viteze maxime: 1,5 Mb/ s i 12 Mb/ s. Cablul pentru rata de transfer mai mare cere protecie electromegnetic mai mare. Standardul prevede o anume culoare pentru fiecare fir. Firul +Data este verde, firul -Data este alb, +5 V DC este rou, iar masa este negru. Host-ul USB se leag, prin conectori i cabluri, la echipamentele USB. Fiecare echipament USB conine informaia pentru autoidentificare i configurare. Fiecare 59

echipament USB are o adres care i este alocat atunci cnd echipamentul este ataat i sesizat de un host controller. Fiecare echipament USB comunic cu host-ul prin intermediul unor canale, pentru comenzi, stri i date. Fig. 7.56 prezint structura unui echipament USB. USB Bus Interface asigur interfaa fizic la magistral. Include serializarea i deserializarea informaiei precum i caracteristicile electrice necesare pentru conectarea la magistral. USB Logical Device conine nivelul de software, la nivelul echipamentelor care implementeaz protocolul USB iar Funcia constituie nivelul software care implementeaz particularitile funciei.

Funcie Ci pentru comunicaii logice USB Local Device Fig. 7.56. Structura unui echipament USB

USB Bus Interface

Cale pentru comunicaia fizic

Fizic, echipamentele USB sunt hubs sau funcii. Figura 7.57 prezint un hub.

Port 3 Port 4 Port 5

Port 2

Port 1 Upstream port Port 7

Fig. 7.57. Un hub USB

Port 6

Hubs-urile simplific conectarea, din punctul de vedere al utilizatorului. Un hub este un concentrator care prin Upstream port se leag spre host iar prin porturi se leag la alte hub-uri sau la funcii. Un hub sesizeaz o conectare sau deconectare la porturile sale i distribuie alimentare. Fiecare port poate fi validat sau invalidat individual i poate lucra cu rat de transfer mare sau mic. Un hub separ porturile cu rat de transfer mare de cele cu rat de transfer mic. Un hub are 2 pri: un Hub Controller i un Hub Repeater. Hub Repeater-ul este de fapt, un comutator controlat printr-un protocol, ntre UpStream port i celelalte porturi (denumite downstream ports). Dispune i de suport hardware pentru reset i suspendare / continuare a transferului. Hub Controller conine setul de registre care asigur comunicarea cu host-ul. Exist comenzi specifice pentru control i stare prin care host-ul poate configura un hub i poate monitoriza i controla porturile sale. Figura 60

7.58 prezint un exemplu de structur USB n care se evideniaz poziia i rolul hubului. Cellalt tip de echipament USB este alctuit din funcii. Aceasta este capabil s trimit sau s primeasc informaii de date i control pe magistral. O funcie poate fi implementat printr-un periferic cu un cablu care se conecteaz ntr-un port al unui hub sau printr-un ansamblu care constituie un "embedded" hub mpreun cu mai multe periferice. "Embedded" hub-ul se leag cu un cablu la un alt hub. Acest ansamblu se numete periferic compus.PC Host / Hub Rdcin

Hub Hub

Scanner Funcie Tastatur Hub / Funcie

Monitor Hub / Funcie

Fig. 7.58. Structur tipic USB

Camer TV Funcie

Microfon Funcie

Mouse Funcie

Difuzoare Funcie

Fiecare funcie conine informaie de configurare care descrie posibilitile sale i cerinele de resurse. nainte ca o funcie s fie utilizat, este necesar configurarea sa de ctre host. Configurarea const n alocarea de lime de band i selectarea unor funcii specifice.

61