Creeaza.com - informatii profesionale despre


Cunostinta va deschide lumea intelepciunii - Referate profesionale unice
Acasa » scoala » informatica » calculatoare
Comunicatii seriale la un calculator

Comunicatii seriale la un calculator


Capitolul I

ARGUMENT

Electronica zilelor noastre pune la dispozitia oamenilor diverse aparate si instalatii necesare realizarii visurilor celor mai indraznete. Comunicarea stirilor si noutatilor, imprimarea sunetului si redarea de inalta fidelitate (HI - FI) a muzicii, televiziunea, asigurarea sigurantei navigatiei maritime, rutiere si aeriene, lupta contra bolilor, calculatoarele electronice, automatica si multe altele alcatuiesc decorul firesc al vietii actuale; décor, dar si sprijin nepretuit care obliga la actiunie sustinuta de sprijinire a frumusetii vietii, la difuzarea culturii, la cunoastere largita in toate domeniile, cu sprijinul echipamentului tehnic actual, care deschide noi posibilitati spre viitor, spre descatusarea fortelor de creatie ale intregii omeniri, spre prosperitate.



Ca domeniu tehnic de uriasa dezvoltare, electronica a cunoscut - in ultimii 20 de ani - modificari din care au avut de profitat si alte multe domenii. Medicina, optica moderna, fizica nucleara, cercetarea stiintifica in general sunt intrepatrunse de mult de folosirea diverselor procedee electronice de investigare stiintifica si utilizarea tehnicilor respective se intensifica pe zi ce trece. Cunoasterea electronicii - in etapa actuala - mai ales pentru cercetare stiintifica, in orice domeniu, este la fel de imperioasa ca si cunoasterea limbilor moderne, dactilografiei, conducerii auto, discipline care sporesc viteza gandirii si sfera cunoasterii.

Tehnica electronicii evolueaza rapid, iar cerintele sunt tot mai mari. Nimic nu este mai simplu, dimpotriva, totul se complica. Inventiile de ieri, simple jucarii tehnice, au ajuns lucruri rafinate, dar care vor face pe urmasii nostri sa surada cu duiosie, asa cum facem noi cand vedem "zambila de arama" a unui fonograf. Oricare ar fi meseria aleasa, electronica, de pe acum prezenta peste tot, va oferi si mai mult sprijin in viitor.

Factor determinant al revolutiei stiintifice si tehnice contemporane, electronica inregistreaza actualmente, in toate tarile dezvoltate industrial, un ritm de dezvoltare deosebit de alert. Electronica este astazi un numitor comun al radio - telecomunicatiilor, automaticii, informaticii, roboticii si ciberneticii, avand multiple si importante aplicatii in toate domeniile cercetarii stiintifice, industriei, economiei.

Inceputul secolului al XX-lea a fost marcat de aparitia electronicii. Ea a inceput sa fie folosita in diverse domenii, asa cum s-a aratat mai sus; mai tarziu au aparut radioul si televizorul.

In 1960, in cadrul Departamentului de Aparare din SUA, a aparut si s-a dezvoltat reteaua ARPANET (Advanced research Projects Agency NETwork). Reteaua era conceputa astfel incat, daca o parte din retea era distrusa, informatiile puteau fi transmise pe alte rute. In 1973 reteaua ARPANET a stabilit legaturi si cu calculatoarele din Anglia si Norvegia, devenind o retea internationala. Cu timpul, s-a ajuns la INTRENET-ul de astazi. Retelele de comunicatii de date au devenit parte integranta a societatii moderne; standardizarea protocoalelor de comunicatii si conectivitatea globala a sistemelor informatice asigura o serie de facilitati: transferul de fisiere, accesul de la distanta la bazele de date, transmiterea de mesaje, etc.

Capiolul al II-lea

COMUNICATII SERIALE

II.1. Interfata seriala

Cele mai multe legaturi de la un calculator la altul se fac printr-un port serial, printr-unul paralel sau printr-un adaptor de retea. Conectarea calculatoarelor la alte sisteme de calcul permit transferarea si partajarea fisierelor, utilizarea postei electronice, accesul la software-ul altor calculatoare, si, in general, comportarea a doua sau mai multe calculatoare ca o echipa.

Porturile principale de comunicatie din orice PC sunt cele seriale si cele paralele. Porturile seriale sunt folosite in primul rand pentru dispozitivele care trebuie sa comunica bidirectional cu sistemul; printre acestea se numara: modemul, mouse-ul, scanner-ul, digitizorul sau orice alt dispozitiv care trimite si primeste date de la PC.

Interfata seriala asincrona este dispozitivul de baza in comunicatia dintre sisteme. Se numeste asincrona pentru ca nu exista nici un semnal de sincronizare sau de ceas, astfel incat caracterele pot fi trimise in orice interval de timp, ca atunci cand operatorul introduce date de la tastatura.

Fiecare caracter transmis printr-o linie seriala este incadrat de un semnal standard de start si unul de stop. Un singur bit "zero", numit bit de strart, precede fiecare caracter, pentru a anunta sistemul destinatar ca urmatorii opt biti constituie un octet de date. Caracterul este urmat de unul sau doi biti de stop, care anunta terminarea transmiterii lui. La recaptie, caracterele sunt recunoscute dupa semnalele de start si de stop, si nu dupa temporizarea sosirii lor. Interfata asincrona este orientata spre caracter si are o suprasarcina (un excedent de date) de aproximativ 20%, datorita informatiilor suplimentare necesare identificarii fiecarui caracter.

Atributul "serial" se refera la datele transmise pe o linie, bitii succedandu-se in serie pe masura ce sunt transmisi. Acest tip de comunicatie se foloseste prin sistemul telefonic, deoarece el furnizeaza cate o linie de date pentru fiecare directie.

Porturile seriale pot fi conectate la o diversitate de dispozitive ca: modemuri, plottere, imprimante, alte calculatoare, cititoare de coduri de bara, cantare electronice si circuite pentru controlul dispozitivelor. In general, orice dispozitiv care necesita o conexiune bidirectionala la un PC foloseste un port serial conform standardului RS-232c (Reference Standard 232, versiunea c). Acest dispozitiv permite transferal de date intre dispozitive altfel incompatibile. "Inima" oricarui port serial este circuitul de receptie / transmisie asincron universal, numit si circuit UART (Universal Asynchronous Receiver / Transmitter); acest cip controleaza conversia datelor paralele din PC, native, in format serial si conversia datelor seriale de pe linie in formatul paralel al calculatorului.

Porturile seriale sunt circuite electronice extrem de complexe care:

Serializeaza/desearilizeaza informatia

Impacheteaza/despacheteaza informatia

Converseaza cu dispozitivul care este conectat la ele.

Intrerupe microprocesorul atunci cind acesta trebuie sa scrie in port sau sa citeasca informatie din port

Dispune de adresa propie prin care pot fi accesate pentru citire/scriere.

Pastreaza pentru scurt timp in memoria propie informatia care trebuie transmisa sau care a fost receptionata.

Impachetare - informatia care trebuie transmisa este segmentata in caractere de 5,6,7 sau 8 biti care sunt incadrate de biti de start ,unul de paritate , 1,1,5 sau 2 biti de stop.

Despachetare- informatia venita din retea este curatata de bitii de start ,stop, paritate.

Serializare - trecerea din format paralel in format serial necesar transmiterii pe cablul serial.

Deserializare - informatia in format serial venita din retea este transformata in format paralel.

Conversatie - schimb de informatii de control transmise sau primite pe pini specializati ai portului serial

RTS-cerere de emisie

CTS- gata de emisie

DTR- calculator pregatit de receptie

DSR-modem pregatit

DCD-vine data

Intrerupe - portul serial dispune de o iesire de IRQ (Interrupt Request ) prin care cere intreruperea microprocesorului pentru a prelua sau depune date in memoria portului.

II.2. Semnalele interfetei seriale

Una din componentele universale ale unui calculator este interfata seriala. La aceasta interfata se pot conecta un numar mare de echipamente ce sunt si foarte utilizate: mouse, modem, cititor de cod de bare, plotter, imprimanta seriala, un alt calculator, etc. In ciuda utilizarii pe scara larga a echipamentelor periferice seriale, putine persoane cunosc implementarea portului serial sau pot dezvolta aplicatii hard si soft bazate pe aceasta interfata.

Prin interfata seriala se intelege ansamblul circuitelor si programelor de baza care asigura comunicatia intre unitatea centrala (procesor) si un dispozitiv periferic care transfera informatia bit dupa bit.

Interfata serie se foloseste atunci cand distanta de comunicatie este mare (> 1.50 m), deoarece pe distante mari riscul de perturbare a informatiei este crescut si, cu cat numarul de linii este mai mic, cu atat posibilitatea de perturbare scade.

Vitezele de transfer pe linie au fost standardizate, exista anumite trepte de viteza bine determinate, despre care se va vorbi ceva mai tarziu. Unitatea de masura a vitezei de transfer pe liniile seriale este 1 bit pe secunda. Exista o diferenta intre unitatile de masura bit pe secunda si baud: baud inseamna numarul de schimbari de stare ale liniei pe secunda in timp ce biti pe secunda reprezinta numarul de biti de informatie transferati intr-o secunda. Diferenta intre cele doua unitati de masura apare daca linia de comunicatie are mai mult de doua stari.

Legatura intre un sistem de calcul si un modem, un sistem de calcul si un periferic sau intre doua sisteme aflate la distanta mica se realizeaza prin conectori cu 25 de contacte. In figura de mai jos se prezinta denumirea semnalelor si sensul acestora. Cifrele indica numarul pinilor conectorilor, iar cifrele din paranteze reprezinta semnalele conform standardului V.24.

Semnalele interfetei seriale.

Transmitted Data (Transmisie date)

Datele sunt transmise serial pe aceasta linie. Dupa bitul de start se transmite bitul 0, cel mai puĝin semnificativ dintr-un octet. In general, pentru transmisie este necesar ca semnalele RTS, CTS, DTR si DSR sa fie active. Aceste semnale sunt activate in cadrul secventei de stabilire a legaturii cu modemul.

Received Data (Receptie date)

Aceasta linie este utilizata pentru recaptia datelor de la modem sau de la un dispozitiv extern.

Request To Send, RTS (Cerere de emisie)

Se indica modemului sau dispozitivului extern faptul ca ETPD este gata pentru transmisia datelor. Raspunsul la acest semnal se recaptioneaza pe linia CTS.

Clear To Send, CTS (Modem gata de emisie)

Prin aceasta linie interfata sesizeaza faptul ca modemul sau dispozitivul extern este pregatit pentru transmisia datelor.

Data Set Ready, DSR (Modem operational)

Interfata sesizeaza prin aceasta linie starea operaĝionala a modemului sau dispozitivului extern. Semnalul de pe aceasta linie reprezinta raspunsul la semnalul DTR.

Carrier Detect (Detectare purtatoare de semnal)

Indica faptul ca pe linia seriala se transmit date (este prezenta purtatoarea de semnal). Acest semnal se mai numeste Received Line Signal Detector.

Transmit Current Loop Data

Transmit Current Loop Return

Receive Current Loop Data

Receive Current Loop Return

Aceste linii permit comunicatia intre echipamente aflate la oarecare

distanta, fara utilizarea unor modemuri. Metoda utilizata se numeste transmisie prin bucla de curent.

Data Terminal Ready, DTR (Terminal de date operational)

Prin aceasta linie ETPD indica modemului sau dispozitivului extern faptul ca este operational. Raspunsul la acest semnal este semnalul DSR.

Ring Indicator, RI (Indicator de apel)

Prin aceasta linie modemul indica interfetei seriale un apel de la modemul sau echipamentul aflat la distanta. Secventa de stabilire a legaturii intre ETPD si modem consta pe scurt din urmatoarele operatii: programul activeaza semnalul DTR si asteapta raspunsul DSR de la modem. In continuare se activeaza semnalul RTS, si se asteapta raspunsul CTS de la modem. In cazul in care nu se utilizeaza modemuri, distanta maxima este de 15-20 m.

II.3. Registrele circuitului 8250

Interfata seriala a calculatoarelor IBM PC este realizata de obicei cu circuitul 8250. In unele cazuri se utilizeaza circuitul 16450 sau 16550. Circuitul 16450 poate fi programat in mod identic cu circuitul 8250. Circuitul 16550 este compatibil la nivel de pini cu circuitul 8250, fiind compatibil si din punct de vedere al programarii, dar are o memorie FIFO interna care poate fi validata sau invalidata prin program.

Registrele circuitului sunt accesibile prin instructiuni de I/E. Pentru primul adaptor serial, adresele porturilor sunt cuprinse intre 3F8h si 3FEh, iar pentru al doilea adaptor intre 2F8h si 2FEh. Primele doua porturi permit accesul la mai multe registre ale circuitului. Exista si registre care nu sunt accesibile prin program.

Denumirea registrelor si adresele porturilor pentru primul adaptor, respectiv al doilea adaptor sunt prezentate in continuare. Prin W/O (Write/Only) se indica faptul ca portul poate fi doar inscris, iar prin R/W (Read/Write) faptul ca acesta poate fi citit si inscris.

3F8h (2F8h)

THR Buffer de transmisie (Transmitter Holding Register, W/O); Registru divizor, octetul c.m.p.s., daca bitul 7 al registrului de control al liniei (LCR) este 1 (Divisor Latch Register LSB, R/W)

3F8h (2F8h)

RBR Buffer de receptie (Receiver Buffer Register, R/O)

3F9h (2F9h)

IER Registru de validare a intreruperilor (Interrupt Enable Register, R/W); Registru divizor, octetul c.m.s., daca bitul 7 al registrului de control al liniei (LCR) este 1 (Divisor Latch Register MSB, R/W)

3FAh (2FAh)

IIR Registru de identificare a intreruperilor (Interrupt Identification Register, R/O)


3FBh (2FBh)

LCR Registru de control al liniei (Line Control Register, R/W)

3FCh (2FCh)

MCR Registru de control al modemului (Modem Control Register, R/W)

3FDh (2FDh)

LSR Registru de stare a liniei (Line Status Register, R/O)

3FEh (2FEh)

MSR - Registru de stare a modemului (Modem Status Register, R/O)

THR - Transmitter Holding Register (W/O)

Este selectat daca bitul 7 al registrului LCR este 0. Caracterul care trebuie transmis va fi inscris in acest registru. Daca registrul TSR (Transmitter Shift Register, descris mai jos) se goleste, deci circuitul poate incepe transmisia unui nou caracter, continutul registrului THR va fi transferat in registrul TSR si se incepe transmisia caracterului pe linie.

Daca registrul THR se goleste (deci poate fi inscris cu un nou caracter), circuitul genereaza o intrerupere daca generarea intreruperilor este validata. Starea acestui registru se poate determina prin testarea bitului 5 al registrului LSR.

TSR - Transmitter Shift Register

Este un registru intern care nu este accesibil prin program. La terminarea transmisiei unui caracter, continutul registrului THR este transferat automat in registrul TSR si se incepe transmisia acestuia.

Daca registrul TSR se goleste (deci ar putea incepe transmisia unui nou caracter), dar registrul THR este gol, circuitul genereaza o intrerupere.

Starea acestui registru se poate determina prin testarea bitului 6 al registrului LSR.

RBR - Receiver Buffer Register (R/O)

Este selectat daca bitul 7 al registrului LCR este 0. Un caracter receptionat este depus in acest registru, de unde trebuie preluat de programul de receptie inaintea terminarii receptiei unui nou caracter. In caz contrar apare o eroare de suprapunere (overrun error). Receptia unui caracter determina generarea unei intreruperi. Starea acestui registru se poate determina prin testarea bitului 0 al registrului LSR.

IER - Interrupt Enable Register (R/W)

Este selectat daca bitul 7 al registrului LCR este 0. Circuitul poate genera patru tipuri de intreruperi, cu nivele de prioritate diferite. Registrul IER permite validarea independenta a generarii acestor intreruperi (figura urmatoare).

. Bitul 0 (Enable Receive Character Interrupt) permite validarea generarii intreruperii la receptia unui caracter.

. Bitul 1 (Enable Transmitter Holding Register Empty Interrupt) valideaza generarea intreruperii la golirea registrului THR, deci dupa transferarea continutului acestui registru in registrul TSR. La aparitia acestei intreruperi se poate inscrie un nou caracter in registrul THR.

. Bitul 2 (Enable Receive Line Status Interrupt) valideaza generarea unei intreruperi la modificarea registrului de stare a liniei (LSR), de obicei la aparitia unor erori de recaptie.

. Bitul 3 (Enable Modem Status Interrupt) valideaza generarea unei intreruperi la modificarea registrului de stare al modemului (MSR).

Divisor Latch Register LSB & MSB (R/W)

Cele doua registre sunt accesibile prin porturile cu adresele 3F8h (2F8h), respectiv 3F9h (2F9h), daca bitul 7 al registrului de control al liniei (LCR) este 1. Contin valoarea cu care trebuie divizata frecvenĝa ceasului propriu al circuitului 8250 (1.8432 MHz) pentru a se obĝine debitul binar necesar. Pentru calculul divizorului trebuie sa se tina cont de factorul de ceas al circuitului 8250, de obicei 16 (debitul binar este de 16 ori mai mic decat frecventa obtinuta prin divizare). Se poate utiliza formula:

Divizor = 1843200 / (DebitBinar / 16)

Tabelul urmator contine divizorii corespunzatori diferitelor debite binare.

Debit binar

(biti/s)

Divizor

(hexa)

Debit binar

(biti/s)

Divizor

(hexa)

900h

30h

417h

20h

300h

18h

180h

10h

C0h

0Ch

60h

06h

40h

03h

3Ah

01h

Divizorii frecvenĝei de 1.8432 MHz pentru diferite debite binare.

IIR - Interrupt Identification Register (R/O)

Desi intreruperile generate de circuitul 8250 apar pe un singur nivel (IRQ4 pentru primul adaptor si IRQ3 pentru adaptorul al doilea), aceste intreruperi pot avea patru tipuri de cauze, cu prioritati diferite. Identificarea cauzei intreruperii se poate realiza prin testarea bitilor 2-0 din registrul de identificare a intreruperilor (IIR). Ceilalti biti ai registrului nu sunt utilizeti la circuitul 8250.

Semnificaĝia bitilor utilizati ai registrului IIR este indicata in tabelul urmator:

Biti 2-0

Prioritate

Tip intrerupere

Cauza intreruperii

Resetarea intreruperii

Nu exista intrerupere

3 (minima)

Modificare stare modem

Modificare  TS, DSR, RI sau purtatoare

Citire registru de

stare modem

(MSR)

Terminare transmisie caracter

Registrul THR gol

Citire IIR sau scrierea

unui caracter

in THR

Receptie

caracter

Registrul RBR contine

un caracter receptionat

Citire registru RBR

0 (maxima)

Modificare

stare linie

Eroare de suprapunere,

de incadrare sau de

paritate, sau transmisie

spatii (Break)

Citire registru de

stare linie (LSR)

Din tabelul prezentat se observa ca circuitul se poate utiliza si prin polling, testand periodic bitul 0 al registrului de identificare a intreruperilor.

Prin inscrierea registrului LCR (figura de mai jos) se pot stabili parametrii transmisiei. Semnificatia bitilor este urmatoarea:

. Bitii 1-0 (Word Length Select) specifica lungimea caracterelor transmise:

00 5 biti / caracter

01 6 biti / caracter

10 7 biti / caracter

11 8 biti / caracter

LCR - Line Control Register (R/W)

. Bitul 2 (Number of Stop Bits) indica numarul bitilor de stop utilizati pentru transmisie sau asteptati la receptie:

0 1 bit de stop

1 2 biti de stop (1.5 biti daca lungimea caracterelor este de 5 biti)

. Bitul 3 (Parity Enable) valideaza verificarea paritatii:

0 fara verificarea paritatii

1 cu verificarea paritatii

. Bitul 4 (Even Parity Select) indica tipul paritatii utilizate:

0 paritate impara

1 paritate para

. Bitul 5 (Stick Parity) permite transmiterea sau asteptarea unor biti de paritate cu valoare fixa, 0 sau 1:

0 verificarea obisnuita a paritatii, conform bitilor Parity Enable si Even Parity Select;

1 daca bitul Parity Enable este 1, se transmit sau se verifica biti cu valoare fixa in locul bitului de paritate, conform bitului Even Parity Select: daca bitul Even Parity Select este 0, bitul de paritate este intotdeauna 1;

daca bitul Even Parity Select este 1, bitul de paritate este intotdeauna 0.

. Bitul 6 (Set Break). Daca este 1, circuitul forteaza linia la nivelul 0 logic atunci cand nu exista caractere de transmis (linia este in starea 'break').

. Bitul 7 (Divisor Latch Address Bit) modifica rolul registrelor accesibile prin adresele 3F8h (2F8h) si 3F9h (2F9h). Daca este 0, aceste registre sunt Transmitter / Receiver Buffer Register, respectiv Interrupt Enable Register, iar daca este 1 registrele sunt cele utilizate pentru inscrierea divizorului care stabileste viteza de transmisie.

MCR - Modem Control Register (R/W)

Se utilizeaza pentru comanda comunicatiei cu modemul (figura de mai sus).

. Bitul 0 (Data Terminal Ready) si bitul 1 (Request To Send) permit activarea semnalelor DTR si RTS ale interfetei.

. Bitii 2 si 3 (OUT1 si OUT2) se pot utiliza pentru implementarea unei comunicatii definite de utilizator.

. Bitul 4 (LOOP) se utilizeaza pentru testare. Prin setarea acestui bit se vor efectua urmatoarele operatii:

1. Datele de la iesirea registrului TSR (Transmitter Shift Register) vor fi recaptionate in registrul RBR (Receiver Buffer Register);

2. Liniile de intrare CTS, DSR, CD si RI sunt deconectate, iar comanda lor aparenta se poate realiza cu bitii 0-3 ai registrului de control al modemului (DTR, RTS, OUT1, respectiv OUT2). Daca circuitul este programat astfel incat intreruperile sa fie validate, modificarea acestor biti va determina generarea intreruperilor ca si in cazul in care semnalele ar fi activate de modem.

LSR - Line Status Register (R/O) - Indica starea liniei de comunicatie. Bitii 0-4 se refera la recaptie, iar bitii 6-7 se refera la transmisie (figura urmatoare).

. Bitul 0 (Data Ready) este setat daca in registrul RBR se afla un caracter recaptionat. Bitul este sters automat in urma citirii caracterului.

Daca intreruperile sunt validate, recaptia unui caracter genereaza o intrerupere.

. Bitul 1 (Overrun Error) indica o eroare de suprapunere. Este setat daca se recaptioneaza un caracter inaintea citirii caracterului din registrul RBR de catre unitatea centrala. In acest caz se pierd unul sau mai multe caractere. Eroarea de suprapunere, ca si celelalte erori, genereaza o intrerupere. Bitul este resetat in urma citirii registrului LSR.

. Bitul 2 (Parity Error) este setat daca se recaptioneaza un caracter cu paritatea diferita de cea asteptata. Este resetat prin citirea registrului LSR.

. Bitul 3 (Framing Error) este setat daca se recaptioneaza un caracter fara bitii de stop corespunzatori. La recaptie se testeaza numai primul bit de stop, indiferent de numarul bitilor de stop programati. La detectarea acestei erori circuitul incearca sa se resincronizeze. Bitul este resetat prin citirea registrului LSR.

. Bitul 4 (Break Interrupt) este setat daca este sesizat nivelul 0 (spatiu) pe linie pentru o perioada mai mare decat cea necesara pentru transmisia unui caracter. Se depune un octet cu valoarea 0 in bufferul de recaptie. La detectarea unui spatiu se genereaza o intrerupere. Bitul este resetat prin citirea registrului LSR.

. Bitul 5 (Transmitter Holding Register Empty) este setat atunci cand continutul registrului THR este depus in registrul TSR si se incepe transmisia caracterului. La golirea registrului THR se genereaza o intrerupere. Bitul este resetat la inscrierea unui caracter in registrul THR.

. Bitul 6 (Transmitter Shift Register Empty) este setat daca atat registrul THR cat si registrul TSR s-au golit.

MSR - Modem Status Register (R/O) - Contine informatii despre starea modemului (figura de mai jos).

. Bitii 0-3 indica modificarea starii semnalelor CTS, DSR, RI si CD de la ultima citire a registrului MSR. Acesti biti sunt resetati la citirea registrului MSR.

. Bitii 4-7 indica starea curenta a semnalelor CTS, DSR, RI si CD.

II.4. Functii BIOS pentru interfata seriala

Functiile BIOS pentru comunicatia seriala asincrona sunt accesibile prin intreruperea 14h. Pentru controlul prin intreruperi al interfetei seriale este necesara scrierea unor rutine proprii, deoarece functiile BIOS permit doar transmisia si recaptia prin testarea starii.

In general, functiile returneaza starea liniei in registrul AH si cea a modemului in registrul AL. Semnificatia bitilor celor doi octeti de stare este urmatoarea:

AH (Stare linie)

. Bit 0 (Data Ready): exista un caracter recaptionat in registrul de recaptie;

. Bit 1 (Overrun Error): eroare de suprapunere;

. Bit 2 (Parity Error): eroare de paritate;

. Bit 3 (Framing Error): eroare de incadrare (nu s-a recaptionat nici un bit de stop);

. Bit 4 (Break Detect): linia este la nivelul 0 pentru un timp mai lung decat cel necesar transmiterii unui caracter;

. Bit 5 (Transmitter Holding Register Empty): registrul de transmisie este gol;

. Bit 6 (Transmitter Shift Register Empty): circuitul a terminat de transmis toate caracterele care au fost inscrise in registrul de transmisie;

. Bit 7 (Time-Out Error): s-a depasit timpul de asteptare pentru transmisie sau receptie.

AL (Stare modem)

. Bit 0 (Delta Clear To Send): starea semnalului CTS s-a modificat;

. Bit 1 (Delta Data Set Ready): starea semnalului DSR s-a modificat;

. Bit 2 (Trailing Edge Ring Indicator): semnalul RI a ajuns la nivel 1;

. Bit 3 (Delta Carrier Detect): starea purtatoarei de date s-a modificat;

. Bit 4 (Clear To Send): valoarea semnalului CTS;

. Bit 5 (Data Set Ready): valoarea semnalului DSR;

. Bit 6 (Ring Indicator): valoarea semnalului RI;

. Bit 7 (Carrier Detect): valoarea purtatoarei.

II.5. Configurarea parametrilor de comunicatie

Transferul pe liniile seriale se desfasoara respectand anumiti parametrii de comunicatie: rata de transfer, numar de biti de date, paritate si numar de biti de stop. Pentru a se "intelege", doua aplicatii sau echipamente ce comunica pe linii serie, trebuie sa foloseasca aceleasi valori ale parametrilor de comunicatie. Astfel ca, orice aplicatie ce utilizeaza interfata serie trebuie sa configureze parametrii pentru comunicatia serie cu aceleasi valori cu care este configurat celalalt partener implicat in comunicatie.

Configurarea interfetei serie presupune setarea ratei de transfer, a numarului de biti de date, a numarului de biti de stop si tipul de paritate utilizat. Acesti parametrii se pot configura prin intermediul registrelor interne circuitului de interfata serie.

Pentru setarea ratei de transfer exista doua registre pe 8 biti, numite registre de divizare. Generatorul ratei de transfer preia tactul de intrare si il imparte cu orice numar cuprins intre 1 si 216 - 1, numar aflat in aceste registre de divizare. Frecventa de iesire a generatorului este 16x rata de transfer.

divizor = (frecventa de intrare) / (rata de transfer x 16)

Numarul cu care se divide tactul este stocat in cele doua registre de divizare, care se incarca in timpul initializarii, cu valorile corespunzatoare ratei de transfer dorite. Frecventa de intrare in cazul PC-urilor este 1.8432 MHz, astfel ca viteza maxima a interfetei seriale este 115200 bps.

Viteza (bps)

Rgistrul de divizare mai semnificativ

Registrul de divizare mai putin semnificativ

09h

00h

01h

80h

00h

C0h

00h

30h

00h

18h

00h

0Ch

00h

06h

00h

03h

00h

02h

00h

01h

Divizorii pentru ratele de transfer utilizate

Setarea parametrilor de comunicatie presupune implementarea urmatorilor pasi:

  • setarea bitului DLAB din registrul de control;
  • incarcarea registrelor de divizare cu valoarea corespunzatoare ratei de transfer dorite;
  • configurarea celorlalti parametrii de comunicatie la valorile dorite si resetarea bitului DLAB.

II.6. Programarea interfetei serie

Dupa configurarea interfetei serie, aceasta poate fi folosita pentru transmisia si/sau receptia datelor catre/de la dispozitivul conectat la aceasta. Comunicatia dintre calculator si echipamentul periferic se poate face in doua moduri:

  • prin polling - aplicatia verifica tot timpul starea interfetei si in caz ca s-a receptionat un octet, acesta este citit si mai apoi prelucrat;
  • prin intreruperi - atunci cand este receptionat un octet, interfata serie genereaza o intrerupere catre procesor, iar in rutina de tratare a intreruperii va prelua octetul receptionat si-l va face disponibil aplicatiei.

II.7. Controlul fluxului la comunicatia serie

Problema care poate aparea este datorata diferentei intre viteza cu care sunt transmise caracterele de catre transmitator si viteza cu care receptorul preia caracterele din buffer-ul de receptie. Daca modulul receptor este mai lent sau preia datele din buffer-ul de receptie (datorita operatiilor implementate) cu o rata mai mica decat rata cu care datele receptionate sunt introduse in buffer, atunci buffer-ul de receptie se poate umple si se pot pierde o parte din datele receptionate. Aceasta problema este mai evidenta la comunicarea prin polling cu interfata serie, deoarece este folosit buffer-ul de receptie implementat in circuitul de interfata, avand dimensiunea doar de cativa octeti.

Solutia pentru aceasta problema consta in implementarea unei metode de control al fluxului. Prin aceste metode se ofera posibilitatea receptorului sa "anunte" transmitatorul ca buffer-ul de receptie este plin si ca trebuie sa intrerupa momentan transmisia. Daca buffer-ul de receptie se mai goleste, receptorul poate anunta transmitatorul ca poate sa mai transmita date.

Capitolul al III-lea

NORME SPECIFICE DE PROTECTIA MUNCII

Protectia muncii este un ansamblu de masuri tehnice, sanitare si organizatorice, avand ca scop ocrotirea vietii si sanatatii celor ce muncesc si asigurarea unor conditii optime de munca.

Fiecare om al muncii este obligat ca, inainte de folosirea mijloacelor individuale de protectie, sa verifice lipsa defectelor exterioare, curatenia lor, marcarea tensiunii la care este permisa utilizarea precum si daca nu s-a depasit termenul de mentinere a caracteristicilor electrice.

Art.3825: Amestecul acizilor se face turnand pe cel mai concentrat in cel mai diluat-

Art.3539: La exploatarea bailor cu continut acid se va evita contactul solutiilor cu pielea

Art.3676: Comenzile de pornire si oprire a lucrarilor se vor face de catre seful de lucrare, si tot el va conduce probele.

Art.3689: Cablurile mobile de legatura se vor controla inainte de punerea sub tensiune

Art.3699: Este interzisa modificarea montajelor electrice aflate sub tensiune.

Art.3720: Se interzice atingerea legaturilor neizolate chiar daca acestea sunt alimentate la tensiuni joase.

In toate atelierele si locurile de munca in care se foloseste energia electrica se asigura protectia impotriva electrocutarii.

Prin electrocutare se intelege trecerea unui curent electric prin corpul omenesc. Tensiunea la care este supus omul la atingerea unui obiect sub tensiune este numita tensiune de atingere.

Gravitatea electrocutarii depinde de o serie de factori:

Rezistenta electrica a corpului omenesc. Rezistenta medie a corpului (pielea este singurul organ izolator) este de 1000 si poate avea valori mai mari pentru o piele uscate sau valori mult mai mici (200) pentru o piele uda sau ranita

Frecventa  curentului electric. Curentul alternativ cu frecvente intre 10-100Hz este cel mai periculos. La frecvente de circa 500.000Hz excitatiile nu sunt periculoase chiar pentru intensitati mai mari ale curentului electric.

Durata de actiune a curentului electric. Daca durata de actiune a curentului electric este mai mica de 0,01 efectul nu este periculos;

Calea de trecere a curentului prin corp. Cele mai periculoase situatii sunt cele in care curentul electric trece printr-un circuit in care intra si inima sau locuri de mare sensibilitate nervoasa (ceafa, tampla etc.)

Valorile curentilor care produc electrocutarea. Acestea  se pot calcula simplu cu legea lui Ohm: unde R este suma rezistentelor din circuit. -valoarea limita a curentilor nepericulosi sunt 10mA curent alternativ si 50mA curent continuu.

Efectele trecerii curentului electric prin corpul omenesc se pot grupa in: electrosocuri si electrotraumatisme. Cand valoarea intensitatii curentului electric este mai mica de 1mA, nu se simte efectul socului electric. La valori mai mari de 10mA curent alternativ se produc comotii nervoase in membre; contractiile muschilor fac ca desprinderea omului de obiectul aflat sub tensiune sa se faca greu. Peste valoarea de 10mA se produce fibrilatia inimii si oprirea respiratiei. Electrotraumatismele se datoreaza efectului termic al curentului electric si pot provoca orbirea, metalizarea pielii, arsuri.

Cositorirea si lipirea se fac in locuri special amenajate si prevazute cu sisteme de ventilatie corespunzatoare.

Art.3760: Baile de cositor pot fi izolate termic astfel incat temperatura elementelor exterioare sa nu depaseasca 35 grade Celsius

Art.3761: Se interzice introducerea in baia de cositor a unor piese umede; este interzisa introducerea in bai fara sa fi fost in prealabil sters si uscat.

Art.3762: Locurile de munca la care se executa operatii de lipire vor fi prevazute cu un sistem de ventilatie locala pentru absorbirea nocivitatilor din zona ciocanului de lipit.

Art.3764: Toate sculele electrice portabile folosite la lipire vor fi alimentate la o tensiune de sub 24V, iar in locurile periculoase din punct de vedere al electrocutarii alimentarea se va face la 12V.

Este interzisa modificarea montajelor electrice sub tensiune

Aparatele electrice si dispozitivele auxiliare sa fie alimentate la o tensiune corespunzatoare si sa aiba prize cu impamantare.

BIBLIOGRAFIE

Scott Mueller - PC - Depanare si modernizare, Editura tehnica, Bucuresti, 2003

Peter Norton - Secrete PC, Editura Teora, Bucuresti, 1996

Reteaua Internet





Politica de confidentialitate


creeaza logo.com Copyright © 2024 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.