Cap4_Interfete_seriale

29
Teletransmisii de date Cap. 4 Interfeţe seriale 42 4 INTERFEŢE SERIALE 4.1. Introducere Interfaţa serială RS-232 este unul din cele mai răspândite echipamente periferice. După cum îi spune şi numele, transmisia şi recepţia se face bit cu bit, necesitând doar un singur fir pentru transmisie. RS-232 este un standard, în sensul că toate modelele de calculatoare şi majoritatea instrumentelor de măsură o înglobează. A fost standardizată de către EIA (Electronics Industries Association) în anul 1962. Aşa cum a fost el conceput, standardul permite comunicaţii doar pe distanţe scurte (până în 20 m) şi viteze de transfer de maxim 19600 bps (bps înseamnă biţi pe secundă). Ulterior s-au dezvoltat şi alte standarde (RS-422, RS-485, RS- 449) ce permit fie distanţe mai mari între emiţător şi receptor, fie viteze mai mari fie mai multe dispozitive conectate pe acelaşi cablu. De exemplu RS- 422 permite până la 10Mbs şi distanţe de până la 1.6 km. Datele seriale pot fi transmise sincron (clocked) sau asincron (non- clocked). Dacă interfeţele menţionate mai sus sunt asincrone, există şi interfeţe sincrone (I 2 C, SPI), acestea fiind destinate în general distanţelor scurte şi iterfaţării unor periferice cu microprocesoarele. 4.2. Interfaţa serială standard RS-232 4.2.1. Caracteristici electrice Caracteristicile electrice definesc tensiunile minime şi maxime ale stărilor logice, semnalele şi semnificaţiile lor şi conectorii. a) tensiunile de linie +12V -12V inactiv Bit de start 1 0 0 0 0 0 1 Biţi de stop 7 biţi de date (caracterul A) Bit de paritate 0V +25V -25V -3V +3V 1 0 Fig. 4.1. Nivelele de tensiune ale interfeţei RS232

description

dasdas

Transcript of Cap4_Interfete_seriale

  • Teletransmisii de date Cap. 4 Interfee seriale

    42

    4 INTERFEE SERIALE

    4.1. Introducere Interfaa serial RS-232 este unul din cele mai rspndite echipamente periferice. Dup cum i spune i numele, transmisia i recepia se face bit cu bit, necesitnd doar un singur fir pentru transmisie. RS-232 este un standard, n sensul c toate modelele de calculatoare i majoritatea instrumentelor de msur o nglobeaz. A fost standardizat de ctre EIA (Electronics Industries Association) n anul 1962. Aa cum a fost el conceput, standardul permite comunicaii doar pe distane scurte (pn n 20 m) i viteze de transfer de maxim 19600 bps (bps nseamn bii pe secund). Ulterior s-au dezvoltat i alte standarde (RS-422, RS-485, RS-449) ce permit fie distane mai mari ntre emitor i receptor, fie viteze mai mari fie mai multe dispozitive conectate pe acelai cablu. De exemplu RS-422 permite pn la 10Mbs i distane de pn la 1.6 km. Datele seriale pot fi transmise sincron (clocked) sau asincron (non-clocked). Dac interfeele menionate mai sus sunt asincrone, exist i interfee sincrone (I2C, SPI), acestea fiind destinate n general distanelor scurte i iterfarii unor periferice cu microprocesoarele.

    4.2. Interfaa serial standard RS-232

    4.2.1. Caracteristici electrice Caracteristicile electrice definesc tensiunile minime i maxime ale strilor logice, semnalele i semnificaiile lor i conectorii. a) tensiunile de linie

    +12V

    -12V

    inactiv

    Bit de start

    1 0 0 0 0 0 1

    Bii de stop 7 bii de date (caracterul A)

    Bit de paritate

    0V

    +25V

    -25V

    -3V +3V

    1

    0

    Fig. 4.1. Nivelele de tensiune ale interfeei RS232

  • Teletransmisii de date Cap. 4 Interfee seriale

    43

    Nivel 1 logic este corespunztor tensiunilor ntre -3V i -25V, dar tipic, este valoarea de -12V. Nivelul 0 logic corespunde tensiunilor situate ntre 3V i 25V, tipic fiind valoarea de 12V. Orice valoare ntre -3V i 3V nseamn stare nedeterminat. Cnd nu exist impulsuri transmise linia st n 1 logic (-12V). O tensiune de 0V nseamn c linia este ntrerupt sau exist un scurtcircuit. Figura urmtoare ilustreaz un exemplu de transmisie pe interfaa serial RS-232. Tabelul urmtor sintetizeaz caracteristicile electrice ale interfeei. Tabelul 4.1.

    SPECIFICAII RS-232

    Mod de lucru single - ended

    Numrul total de emitoare i receptoare pe o linie 1 emitor 1 receptor Lungimea maxim a cablului 25m Rata maxim de transmisie 20kb/s Tensiunea maxim / minim +/-25V Nivelul de semnal de ieire (ncrcare Min.) ncrcat +/-5V to +/-15V

    Nivelul de semnal de ieire (Fr ncrcare Max) nencrcat +/-25V

    Impedana de ieire a emitorului (Ohms) 3k to 7k Curentul maxim de ieire n starea de nalt impedan alimentat N/A

    Curentul maxim de ieire n starea de nalt impedan nealimentat +/-6mA @ +/-2v

    Slew Rate (Max.) 30V/uS Gama tensiunilor de intrare +/-15V Sensitibilitatea de intrare a receptorului +/-3V Rezistena de intrare a receptorului (Ohms) 3k to 7k

    b) conectori Interfaa RS-232 are dou tipuri de conectori disponibili: DB25S i DB9S. Primul asigur funcionalitatea total a interfeei n timp ce al doilea asigur un spaiu minimal pentru instrumentaia tot mai redus n dimensiuni. Figura urmtoare prezint cele dou conectoare i alocarea pinilor. Semnalele RS-232 sunt mprite n 3 categorii: - date (TxD, RxD). Sunt dou canale de date care permit comunicaii full-duplex.

  • Teletransmisii de date Cap. 4 Interfee seriale

    44

    - controlul comunicaiei (RTS, CTS). Aceste semnale furnizeaz suportul prin care se controleaz traficul datelor. - timing (TC, RC). Pentru comunicaii sincrone este necesar transmiterea unui semnal de tact pentru sincronizarea receptorului cu emitorul. Setul complet de semnale ale interfeei RS-232D sunt adunate n tabelul urmtor mpreun cu numrul pinului corespunztor conectorului Db25. DTE nseamn Data Terminal Equipment iar DCE nseamn Data Circuit termination Equipment i definesc care dispozitiv i pe care fir transmite. DTE poate fi de exemplu un calculator PC iar DCE poate fi un instrument de msur interfaabil. Tabelul 4.2.

    Pin DB25 Semnalul Direcia Funcia 1 FG - Frame ground - nveli de

    protecie, ecran 2 TD sau TxD spre DCE Transmisie date 3 Rd sau RxD spre DTE Recepie date 4 RTS spre DCE Request to send cerere de

    transmisie 5 CTS spre DTE Clear to send liber pentru

    transmisie 6 DSR spre DTE Data set ready Dset de date

    Fig. 4.2. Conectorii specifici interfeei RS232

  • Teletransmisii de date Cap. 4 Interfee seriale

    45

    pregtit. Similar cu CTS doar c este activat DCE.

    7 SG - Signal ground Masa semnal 8 DCD spre DTE Detcie semnal recepionat 9 - - 10 - - 11 - - 12 SDCD spre DTE Detecie semnal recepionat

    secundar/selecie rat (generat de DCE)

    13 SCTS spre DTE Secondary Clear to send Liber pentru transmisie secundar

    14 STD spre DTE Secondary transmitted data Transmisie date secundar

    15 TC spre DTE Transmit signal element timing Semnal de sincronizare utilizat de DTE pentru transmisie.

    16 SRD spre DTE Secondary received data Recepie date secundar

    17 RC spre DTE Receiver signal element timing Semnal de sincronizare pentru recepia datelor, generat de DCE

    18 DCR spre DCE Local loop-back (tact de recepie divizat)

    19 SRTS spre DCE Secondary request o send cerere de transmisie secudar

    20 DTR spre DCE Data terminal ready terminal de date pregtit

    21 SQ spre DCE Remote loop back / signal quality detector detector a calitii semnalului

    22 RI spre DTE Ring indicator indic o cerere de comunicaie. Folosit n comunicaia cu modemul.

    23 DSRS spre DCE / DTE

    Data signal rate select selecie rat transmisie date

    24 TC spre DCE Transmit signal element timing Semnal de sincronizare

  • Teletransmisii de date Cap. 4 Interfee seriale

    46

    generat de DTE 25 TM spre DTE Test mode Mod de test

    Cel mai folosit subset de semnale este cel din tabelul urmtor: Tabelul 4.3.

    Pinul Semnalul Funcia 1 FG nveli de protecie, ecran, asiu 2 TxD Transmisie date de la DTE la DCE 3 RxD Recepie date de ctre DTE de la

    DCE 4 RTS DTE semnalizeaz c dorete s

    trimitdate ctre DCE 5 CTS DCE semnalizeaz c este gata s

    primeasc date de la DTE 6 DSR DCE semnalizeaz c s-a stabilit o

    legtur 7 SG Masa 8 DTR DTE semnalizeaz c DTE este

    operaional c) formatul datelor n majoritatea aplicaiilor datele sunt transmise asincron sub form de pachete, fiecare reprezentnd un singur caracter ASCII i coninnd suficient informaie pentru a fi decodificat fr ajutorul unui semnal de tact. De exemplu caracterul A este reprezentat n cod ASCII ca 1000001. Pentru a o trimite prin interfaa serial ctre alt sistem trebuie s adugm civa bii pentru a semnaliza nceputul i sfritul pachetului. Acetia sunt bitul de start i bitul sau biii de stop. n plus se poate aduga nc un bit pentru paritate n scopul deteciei erorilor. Una din configuraiile cele mai folosite folosete 1 bit de start, un bit de paritate i 2 bii de stop. Deoarece linia nefolosit se afl n 1 logic (-12V), bitul de start este ntotdeauna 0 logic (+12V) cu durata de bit. Acesta este urmat de cei 7 bii de date ai caracterului ASCII. Dup acetia urmeaz bitul de paritate. Funcie de paritatea aleas (par sau impar) bitul poate fi 1 sau 0. Dac se lucreaz cu peritate par, atunci se adaug 1 sau 0 funcie de caracter, a.. numrul de bii de 1 s fie par. n cazul paritii impare numrul de bii de 1 trebuie s fie impar. Atunci bitul de paritate se alege astfel: dac exist un numr impar de bii de 1 n caracter atunci bitul de paritate va fi 0, iar dac

  • Teletransmisii de date Cap. 4 Interfee seriale

    47

    exist un numr par de bii atunci bitul de paritate va fi 1 astfel nct mpreun cu acesta s fie un numr impar. Pentru a genera acest bit sunt necesare doar pori XOR. Un singur bit de paritate poate detecta un numr impar de erori. Dac numrul erorilor este par atunci acestea nu se pot detecta. n final sunt adugai cei doi bii de stop. Acetia sunt amndoi 1. Blocul complet transmis cuprinde 11 bii. n binar blocul pentru transmiterea lui A este 01000001011 (s-a folosit paritate par, bitul de paritate fiind 0 deoarece codul ASCII al lui A conine 2 bii de 1). Forma de und asociat acestei transmisii se gsete n figura 4.1. d) configuraia hardware Odat cu primul microprocesor Intel a dezvoltat o serie de periferice ce includea i o interfa UART. Acesta este I8251. Completarea interfeei se face cu dou circuite adaptoare de nivel 75150 respectiv 75154. Schema electric este prezentat n figura 4.3. Cele dou adaptoare necesit alimentri de 12V pentru obinerea celor dou nivele logice specifice interfeei RS-232.

    ntr-un sistem cu microprocesor datele sunt verificate sub form paralel. Pentru serializarea lor se folosesc regitri de deplasare att la emisie ct i la recepie. Diferena const n faptul c la emisie datele sunt ncrcate paralel i apoi deplasate serial ctre linia TxD (figura 4.4. a), iar la emisie acestea se primesc serial n registrul de deplasare i sunt preluate apoi paralel n sistem (figura 4.4. b).

    Fig. 4.3. Structura hardware a unei interfee RS-232

  • Teletransmisii de date Cap. 4 Interfee seriale

    48

    Un exemplu reprezentativ de interfa serial programabil este circuitul I-8251 produs de Intel (figura 4.5). Circuitul are o interfa compatibil cu microprocesoarele Intel prezentnd 3 magistrale pentru interfaarea cu acestea: magistrala de date (D07), magistrala de adrese CS i magistrala de control (Clk, Reset, RD , WR , DC/ .

    I-8251 accept date(format ASCII) de la CPU n format paralel le transform n ir serial i le trimite prin TxD cu rata programat. n acelai timp recepioneaz date seriale pe RxD cu aceeai rat i le transform n format paralel pentru a fi preluate de ctre CPU. USART va semnaliza ctre CPU cnd poate primi un nou caracter pentru transmitere sau cnd este un nou caracter recepionat disponibil. CPU poate citi n orice moment starea complet a interfeei, aceasta incluznd erorile de transmisie i semnalele de control SYNDET i TxEMPTY.

    Baud Rate

    Registru Combinat

    D07

    LD SO

    TxD Registru Combinat

    D07

    LD

    SI RxD

    Registru Memorare D07

    Q07

    a) b)

    Clk Baud Rate

    Clk

    Fig. 4.4. a) conversia paralel-serie; b) conversia serie-paralel

    Tampon Magistral de

    Date

    Logic de Control

    Scriere / Citire

    Control Modem

    Tampon Transmisie

    Date

    Control Transmisie

    Tampon Recepie

    Date

    Control Recepie

    Res

    et

    C/D

    C

    lk

    WR

    RD

    DTR

    D

    SR

    RTS

    C

    TS

    D0

    7 Tx

    D

    TxR

    DY

    TxE

    TxC

    RxD

    RxR

    DY

    RxC

    SYN

    DET

    CS

    Fig. 4.5. Schema bloc a interfeei UART I-8251

  • Teletransmisii de date Cap. 4 Interfee seriale

    49

    Descrierea funcional a circuitului: Tamponul magistralei de date este un buffer de 8 bii bidirecional de tip 3 state. Datele sunt vehiculate n timpul instruciunilor IN OUT ale CPU. Cuvintele de control, de comand i de stare sunt de asemenea transferate prin el. Logica de control scriere/citire accept comenzi de la magistrala de control a sistemului i genereaz semnalele interne de control pentru blocurile interne. El conine Registrul cuvntului de control i Registrul cuvntului de comand ce memoreaz diferite formate de control pentru definirea funcional a circuitului. Semnalele prezente pe magistrala de control sunt: - Reset 1 logic pe aceast intrare foreaz circuitul n modul idle. Acesta rmne aa pn ce un nou set de cuvinte de control vor fi scrise n regitrii acestuia. Durata minim de iniializare este de 6 perioade de tact. - Clk intrarea furnizeaz semnal de tact circuitelor interne. Semnalul de tact trebuie s fie cel puin 30 de ori mai mare dect ratele de transmisie. - WR - 0 logic pe aceast intrare anun circuitul c CPU scrie date sau informaii de stare n regitrii si interni. - RD - 0 logic pe aceast intrare anun circuitul c CPU citete date sau informaii de stare din regitrii si interni. - DC/ - aceast intrare este n legtur cu WR i RD . Semnalul semnalizeaz dac informaia de pe magistrala de date este o dat sau un cuvnt de comand / o informaie de stare: 1= control/stare, 0=data. - CS - 0 logic pe aceast intrare selecteaz circuitul. Activarea semnalelor de scriere / citire nu vor avea efect dect simultan cu activarea acestuia. Tabelul urmtor prezint strile semnalelor de control la diferitele operaii: Tabelul 4.4.

    DC/ RD WR CS Operaia 0 0 1 0 Date 8251 Magistrala de date 0 1 0 0 Magistrala de date Date 8251 1 0 1 0 Stare Magistrala de date 1 1 0 0 Magistrala de date Control X 1 1 0 Magistrala de date 3 state X X X 1 Magistrala de date 3 state

    Controlul modem-ului permite un set de intrri i ieiri de control ce pot fi folosite pentru a simplifica interfaarea cu orice modem. Ele pot fi folosite i

  • Teletransmisii de date Cap. 4 Interfee seriale

    50

    n alte scopuri. Acestea sunt: - DSR - Data Set Ready intrare inversoare. CPU poate testa starea acesteia printr-o operaie de citire a strii. Ea este utilizat pentru a testa dac exist date disponibile. - DTR - Data Terminal Ready este o ieire inversoare. Poate fi pus n starea 0 logic prin bitul corespunztor din cuvntul de comand. Indic faptul c se pot primi date. - RTS - Request to send - este o ieire inversoare. Poate fi pus n starea 0 logic prin bitul corespunztor din cuvntul de comand. Indic faptul c echipamentul dorete s trimit date. - CTS - Clear to send 0 logic pe aceast intrare anun I-8251s transmit date dac bitul TxD este validat n cuvntul de comand. Dac fie Tx Enable sau CTS trece n 1 logic, circuitul transmite ceea ce este n curs i apoi se oprete. Tamponul de transmisie date accept date paralele de la tamponul magistralei de date, adaug biii suplimentari funcie de modul de comunicaie ales i le convertete ntr-un ir de bii serial pe care l transmite pe ieirea TxD pe frontul negativ al TxC . Transmisia ncepe atunci cnd CTS =0. Controlul transmisiei se ocup de activitile asociate transmisiei datelor seriale. Accept i genereaz semnale necesare acestei operaii: - TxRDY - Transmitter Ready aceast ieire semnalizeaz CPU c transmitorul este gata pentru a recepiona date. Semnalul poate fi folosit ca semnal de cerere de ntrerupere sau poate fi testat de ctre CPU prin citirea strii. El indic faptul c registrul de date al transmitorului este gol/plin. - TxE Transmitter Empty n modul sincron 1 logic pe aceast ieire indic faptul c nu a fost ncrcat un caracter i c se transmit caractere de SYNC cu scopul de a umple golul. - TxC - Transmitter Clock - controleaz rata cu care se transmite caracterul. n modul de transmisie sincron, rata de transmisie (Baud Rate) este egal cu frecvena de tact pe aceast intrare. n modul asincron rata este o fraciune a acesteia (1, 1/16, 1/64). Frontul negativ al semnalului deplaseaz datele la ieirea TxD. Tamponul de recepie date accept datele seriale i le convertete n format paralel i asambleaz caracterul transmis. Datele se primesc pe RxD i sunt validate pe frontul pozitiv al RxC . Controlul recepiei acest bloc se ocup de controlul recepiei datelor. Mai nti trebuie detectat un 1 valid pe linia de recepie, dup care se caut

  • Teletransmisii de date Cap. 4 Interfee seriale

    51

    bitul de start. Aceasta se ntmpl doar n modul asincron. detecia unei erori de paritate activeaz bitul corespunztor. Dac bitul de stop lipsete atunci se activeaz bitul Framing error. Semnale: - RxRDY Receiver Ready aceast ieire indic faptul c 8251 conine un caracter i este gata pentru a-l transmite ctre CPU. Semnalul poate fi utilizat ca o cerere de ntrerupere ctre acesta sau starea sa poate fi testat prin citirea registrului de stare. RxEnable ine RxRDY n condiia de reset. n modul asincron acest semnal este activat dup detectarea unui bit de start i asamblarea caracterului n registrul de recepie. - RxC - Receiver Clock controleaz rata cu care se recepioneaz caracterul. n modul sincron rata este egal cu frecvena semnalului pe aceast intrare. n modul asincron ea este o fracie din aceasta (1, 1/16, 1/64). n majoritatea transmisiilor rata de transmisie este egal cu cea de recepie. - SYNDET SYNC detect / BREAK Detect n modul sincron semnalul poate fi intrare sau ieire programabil prin registrul de control. Cnd este ieire semnalul trece n 1 logic pentru a indica detecia caracter-ului/elor de SYNC. Cnd este intrare un front pozitiv pe aceasta va determina 8251 s nceap asamblarea caracterelor pe frontul urmtor al RxC . n modul asincron ieirea trece n 1 logic dup recepia celor doi bii de stop dup ce n prealabil au fost recepionai bitul start i cel de paritate. Poate fi citit ca bit de stare. Pentru a iniializa interfaa procesorul trebuie s trimit o serie de cuvinte de comand ctre aceasta. Acestea vor programa: rata de transmisie, lungimea caracterelor, numrul biilor de stop, lucrul sincron/asincron i paritatea. Pentru modul de lucru asincron exist i alte opiuni suplimentare. Cuvintele de control sunt de tipuri: instruciune de mod i instruciune de comand. Cele dou instruciuni trebuie s urmeze o secven specific pentru buna funcionare a interfeei (figura 4.6) Instruciunea de mod definete caracteristicile operaionale ale interfeei. Ea urmeaz operaiei de iniializare (Reset intern sau extern). Odat nscris modul, CPU trebuie s nscrie caracterele de SYNC i instruciunile de comand. Pentru a nscrie nc o dat instruciunea de mod, bitul Reset din instruciunea de comand trebuie setat pentru a iniia un reset intern. - Modul asincron de transmisie: cnd un caracter este trimis de ctre CPU, I-8251 i adaug un bit de start nainte i un bit de paritate (opional) i bitul (biii) de stop. Biii cracterului sunt ordonai cu cel mai puin semnificativ primul. Pachetul este trimis serial, bit cu bit, la ieirea TxD. Pachetul de date

  • Teletransmisii de date Cap. 4 Interfee seriale

    52

    este deplasat spre ieire pe frontul negativ al lui TxC cu o rat egal cu 1, 1/16, 1/64 din frecvena TxC , dup cum este definit n instruciunea de

    mod. Cnd nu sunt de transmis caractere, I-8251 ine linia TxD n 1 logic. - Modul asincron de recepie: Linia RxD este normal inut n 1 logic. Un front negativ anun nceputul unui bit de start. Validitatea acestuia este testat din nou n mijlocul perioadei de bit (doar n modurile 16X sau 64X). Dac un nivel 0 logic este detectat din nou, atunci se consider un bit valid

    Instruciune de mod Caracter SYNC 1 Caracter SYNC 2

    Instruciune de comand

    Date

    Instruciune de comand

    Date

    Instruciune de comand

    C/D=1 C/D=1 C/D=1 C/D=1

    C/D=0

    C/D=1

    C/D=0

    C/D=1

    Doar n modul SYNC. Dac s-a

    programat un singur caracter

    SYNC, atunci al doilea nu mai

    exist.

    Fig. 4.6. Programarea interfeei I-8251

    Tipul paritii

    S1 EP PEN L2 L1 B2 B1 S2

    D6 D5 D4 D3 D2 D1 D7

    1 0

    par impar

    Factorul ratei de transmisie 0 1 0 1

    0 0 1 1

    Mod SYNC 1X 16X 64X

    Lungimea caracterului 0 1 0 1

    0 0 1 1

    5 bii 6 bii 7 bii 8 bii

    Validarea paritii 1 0

    cu paritate fr paritate

    Bii de stop 0 1 0 1

    0 0 1 1

    fr 1 bit 1 bii 2 bii

    D0

    Fig. 4.7. Formatul instruciunii de mod modul asincron.

  • Teletransmisii de date Cap. 4 Interfee seriale

    53

    de start, iar numrtorul de bii de la recepie ncepe s numere. Acesta determin ncrcarea biilor (biii de date, bitul de paritate i biii de stop) prin eantionarea lor exact la mijlocul perioadei de bit. Dac se detecteaz o eroare de paritate atunci fanionul de eroare de paritate (Parity error flag) va fi setat. Eantionarea biilor are loc pe frontul pozitiv al semnalului pe intrarea RxC . Dac se detecteaz un nivel 0 logic pe durata biilor de stop, atunci fanionul de eroare de cadru (Framing error flag) va fi setat. Bitul de stop anun sfritul caracterului (receptorul are nevoie doar de 1 bit de stop indiferent de ci sunt programai). Caracterul recepionat este apoi ncrcat n registrul tampon paralel al I-8251. Pinul RxRDY este dus n 1 logic pentru a semnaliza CPU c s-a recepionat un caracter. Dac precedentul caracter nua fost citit din registrul tampon, atunci urmtorul va fi supranscris peste el. Pentru a semnaliza aceasta, fanionul de supranscriere (OverRun Error flag) va fi setat. Toate fanioanele de eroare pot fi reset-ate cu o instruciune de iniializare a erorilor. - Modul sincron de transmisie: Ieirea TxD este inut n 1 logic atta timp ct nu se trimit caractere, cnd CPU trimite primul caracter ctre I-8251 (care de regul este un caracter de SYNC). Odat cu trecerea liniei CTS n 0 logic, primul caracter etse transmis serial. Fiecare bit este deplasat ctre ieire pe frontul negativ al lui TxC . Odat ce transmisia a nceput, datele trebuie s succead continuu la ieirea TxD cu rata fixat de TxC . Dac CPU nu reuete s asigure caracterele de treansmis la timp, caractere de sincronizare (SYNC) vor fi automat inserate. Pinul TxEMPTY va fi adus n 1 logic pentru a semnaliza acest lucru i va fi reset-at odat cu primul caracter nscris n registrul tampon de transmisie. - Modul sincron de recepie: n acest mod sincronizarea caracterelor poate fi realizat intern sau extern. Dac a fost programat modul SYNC, o comand ENTER HUNT (Intrare vntoare) trebuie inclus n prima instruciune de comand. Datele pe RxD sunt eantionate pe frontul cresctor al lui RxC . Coninutul registrului tampon de recepie este comparat la fiecare bit recepionat cu caracterul SYNC pn se detecteaz o potrivire. Dac au fost programate 2 caractere de SYNC, atunci i urmtorul caracter este de asemenea comparat. Cnd au fost detectate 2 caractere SYNC, USART iese din modul vntoare i intr n modul de sincronizare a caracterelor. Pinul SYNDET este dus n 1 logic i va fi reset-at automat dup o instruciune de citire a strii. Dac transmisia este cu bit de paritate atunci SYNDET nu va fi set-at pn la mijlocul bit-ului de paritate (n locul ultimului bit pentru modul fr paritate). n modul de sincronizare extern, sincronizarea se face aplicnd 1 logic pe SYNDET, fornd 8251 s ias din modul vntoare.

  • Teletransmisii de date Cap. 4 Interfee seriale

    54

    Acest nivel va fi prsit dup un tact pe RxC . Comanda ENTER HUNT nu are efect n modul asincron. Erorile de paritate i supranscriere se testeaz la fel ca n modul sincron. Paritatea nu se testeaz n modul vntoare. Dac sincronizarea s-a pierdut, CPU poate fora receptorul s intre n modul vntoare. Aceast aciune va duce n 1 logic toi biii din registrul de recepie pentru a preveni o detecie fals a sincronizrii. Fanionul SYNDET este reset-at la fiecare cititre a strii. Aceasta nu cauzeaz ntparcerea 8251 n modul vntoare. Cnd interfaa se afl n modul sincronizare dar nu n cel de vntoare, detecia sincronizrii este nc funcional dar apare doar la terminarea cuvintelor cunoscute. Astfel, dac o citire a strii indic SYNDET i a doua citire la fel, atunci caractere de sincronizare au fost recepionate. n modul extern, detecia intern a sicronizarii este dezactivata, iar fanionul de detecia a sincronizrii poate fi activat la sfritul oricrui bit.

    Instruciunea de comand controleaz modul de funcionare al formatului selectat prin instruciunea de mod. Toate cuvintele de control scrise n 8251 dup instruciunea de mod vor nsemna instruciuni de comand. Acestea pot fi nscrise la orice moment n interfa. Semnificaia biilor instruciunii de comand este prezentat n figura 4.9.

    Tipul paritii

    ESD EP PEN L2 L1 0 0 SCS

    D6 D5 D4 D3 D2 D1 D7

    1 0

    par impar

    Lungimea caracterului 0 1 0 1

    0 0 1 1

    5 bii 6 bii 7 bii 8 bii

    Validarea paritii 1 0

    cu paritate fr paritate

    Caractere de SYNC 1 0

    1 caracter SYNC 2 caracter SYNC

    D0

    Detecie SYNC extern 1 0

    SYNDET=intrare SYNDET=ieire

    Fig. 4.8. Formatul instruciunii de mod modul sincron.

  • Teletransmisii de date Cap. 4 Interfee seriale

    55

    Formatul informaiei de stare: Pentru a putea obine informaii despre eventualele erori aprute n timpul comunicaiei este adesa necesar citirea strii interfeei. I-8251 permite acest lucru la orice moment. Pentru aceasta se efectueaz o citire din interfa cu semnalul 1DC/ = . Civa dintre bii au semnificaii similare cu unii dintre pinii externi. TxRDY este o excepie. Informaia de stare poate avea o ntrziere de maxim 28 de perioade de tact fa de evenimentul ce a generat starea respectiv. Figura 4.10 prezint semnificaia biilor cuvntului de stare. Biii D6, D2 i D1 sunt cei care au coresponden cu semnalele externe.

    Terminal de date pregtit

    IR RTS ER SBRKEH

    D6 D5 D4 D3 D2 D1 D7

    1 0

    DTR =0 DTR =1

    Validarea transmisiei 1 0

    validat invalidat

    tergere erori 1 0

    tergere fanioane erori -

    D0

    Trimite caracterul BREAK 1 0

    foreaz TxD n 0 logic funcionare normal

    RxE DTR TxEN

    Validarea recepiei 1 0

    validat invalidat

    Cerere de transmisie 1 0

    RTS =0 RTS =1

    Reset intern 1 0

    reset -

    Modul de vntoare 1 0

    valideaz modul vntoare -

    Fig. 4.9. Formatul instruciunii de comand

  • Teletransmisii de date Cap. 4 Interfee seriale

    56

    n continuare sunt prezentate cteva moduri de utilizare a interfeei funcie de tipul de trensmisie ales.

    SYN DET

    FE OE PE DSR

    D6 D5 D4 D3 D2 D1 D7 TxRDY diferit de pinul TxRDY. Bitul semnific faptul c registrul tampon de transmisie este gol, n timp ce pinul semnific (registrul tampon gol) AND ( CTS=0) AND (TxEN=1).

    Eroare de sepranscriere 1 0

    CPU nu a citit toate

    caracterele recepionate

    -

    D0 Tx

    EMPTYRxRDY TxRDY

    Eroarea de paritate 1 0

    s-a detectat eroare

    de paritate

    nu s-a detectat

    eroare de paritate

    Eroare de cadru 1 0

    nu s-a detectat un bit de

    stop valid

    -

    Set de date pregtit 1 0

    indic DSR=0 - Fig. 4.10. Formatul cuvntului de stare

    Adrese

    Control

    Date I-8251

    TxD

    RxD

    RxC

    TxCI-8253

    EIA - TTLTerminal asincron

    Fig. 4.11. Transmisie asincron

    Adrese

    Control

    Date I-8251

    TxD

    RxD

    RxC

    TxC

    Terminal sincron

    SYNDET

    Fig. 4.12. Transmisie sincron

  • Teletransmisii de date Cap. 4 Interfee seriale

    57

    Calculatoarele de tip PC au cel puin un port serial, dar de regul sunt 2, porturi care sunt standardizate. Porturile seriale sun cunoscute sub prescurtarea de COM i sunt numerotate cu 1, 2, 3... Tabelul urmtor listeaz adresele regitrilor asociai celor dou porturi. Adresele de baz sunt 3F8h pentru COM1 i 2F8h pentru COM2. Tabelul 4.5.

    Adresa de baz DLAB RD/WR Abr. Nume

    0 WR - Registru transmitor 0 RD - Registru tampon recepie + 0 1 RD/WR - Memorie octet inferior pentru divizorul ratei de transmisie 0 RD/WR IER Registru validare ntreruperi

    + 1 1 RD/WR - Memorie octet superior pentru divizorul ratei de transmisie + 2 - RD IIR Registru identificare ntreruperi

    Adrese

    Control

    Date

    I-8251

    TxD

    RxD

    RxC

    TxC

    Modem asincron

    I-8253

    DSR

    DTR

    CTS

    RTS

    Interfa cu linia

    telefonic

    Fig. 4.13. Transmisie asincron prin linia telefonic

    Adrese

    Control

    Date

    I-8251

    TxD

    RxD

    RxC

    TxC

    Modem sincron

    DSR

    DTR

    CTS

    RTS

    Interfa cu linia

    telefonic

    SYNDET

    Fig. 4.14. Transmisie sincron prin linia telefonic

  • Teletransmisii de date Cap. 4 Interfee seriale

    58

    - WR FCR Registru control FIFO + 3 - RD/WR LCR Control linie + 4 - RD/WR MCR Control modem + 5 - RD LSR Registru stare linie + 6 - RD MSR Registru stare modem + 7 - RD/WR - Registru Scratch (uz general)

    Regitrii portului serial au urmtoarele semnificaii: Addres: Baza + 1 - RD/WR - DLAB=0 - Nume: Interrupt Enable Register (IER). Semnificaia biilor: Bit # Nume 0 Valideaz ntreruperea pentru data recepionat disponibil 1 Valideaz ntreruperea pentru registru transmitor gol

    2 Valideaz ntreruperea de stare a liniei (INT n LSR - Line Status Register)

    3 Valideaz ntreruperea de stare a modemului (INT n MSR - Modem Status Register) 4 valideaz modul Sleep (16750) 5 Valideaz modul de consum redus (16750) 6 Rezervat

    Addresa: Baza + 2 - RD - Nume: Interrupt Identification Register (IIR) Bit # Nume

    0 ntrerupere n ateptare 0 1 Nu exist ntreruperi n ateptare B2 B1 Tip ntrerupere (prioritate) 0 0 ntrerupere stare modem (4) 0 1 ntrerupere pentru registru transmitor gol (3) 1 0 ntrerupere pentru dat recepionat disponibil (2)

    1 & 2

    1 1 ntrerupere pentru starea liniei receptorului (1) 0 Rezervat pentru 8250, 16450 3 1 16550 ntrerupere n ateptare

    4 Rezervat 5 FIFO de 64 octei activat (numai 16750)

    B6 B7 0 0 Fr FIFO 0 1 FIFO validat dar neutilizabil

    6 & 7

    1 1 FIFO validat

    Addresa: Baza + 2 - WR - Nume: FIFO Control Register (FCR). Bit # Nume

  • Teletransmisii de date Cap. 4 Interfee seriale

    59

    Validare memorii FIFO 1 terge FIFO recepie 2 terge FIFO transmisie

    3 Selecie Mod DMA. Schimb starea pinilor RXRDY & TXRDY din modul 1 n modul 2. 4 Rezervat 5 Validare FIFO 64 octei (16750 only)

    B7 B6 Nivel de trigger pentru ntrerupere 0 0 INT pentru 1 octet recepionat 0 1 INT pentru 4 octei recepionai 1 0 INT pentru 8 octei recepionai

    6 & 7

    1 1 INT pentru 14 octei recepionai

    Adres: Baza + 3 - RD/WR - Nume: Line Control Register (LCR) Bit # Nume

    B1 B0 Lungimea cuvntului 0 0 5 Bii 0 1 6 Bii 1 0 7 Bii

    1

    1 1 8 Bii 0 1 Bit de Stop

    2 1 2 bii de Stop pentru cuvinte 6,7 sau 8 bii sau 1.5 Bii de Stop pentru cuvinte de 5 bii. B5 B4 B3 X X 0 Fr Paritate 0 0 1 Paritate impar 0 1 1 Paritate par 1 0 1 Paritate 1 (bit de paritate 1)

    3, 4 & 5

    1 1 1 Paritate 0 (bit de paritate 0) 6 Validare activare Break 7 1 Acces la memoria divizorului

    0 Acces la tamponul Receptorului, a Transmitorului i la Registrul de validare a ntreruperilor

    Adres: Baza + 4 - RD/WR - Nume: Modem Control Register (MCR) Bit # Nume 0 Foeaz Data Terminal Ready 1 Foreaz Request to Send 2 Ieire auxiliar 1

  • Teletransmisii de date Cap. 4 Interfee seriale

    60

    3 Ieire auxiliar 2 4 Modul bucl napoi (loopback) 5 Validarea controlului Autoflow (numai 16750) 6 Rezervat 7 Rezervat

    Adres: Baza + 5 - RD - Nume: Line Status Register (LSR) Bit # Nume 0 Date disponibile 1 Eroare de supranscriere 2 Eroare de paritate 3 Eroare de cadru 4 ntrerupere Break 5 Registru TX gol 6 Registru TX i registrul de deplasare goale 7 Eroare n FIFO de recepie

    Dac bitul 6 este setat, USART este ocupat (regitri de date sunt ocupai). Daca doar bitul 5 este setat. un alt octet poate fi nscris pentru transmisie. Bitul 4 cnd linia de recepie este inut n 0 logic mai mult dect durata unui caracter inclusiv biii adiionali Bitul 3 ultimul bit nu e bit de Stop (de regul cnd este diferen de rate de transmisie) Bitul 1 data din registrul de recepie nu a fost citit i a fost supranscris datorit unei noi recepii.

    Adres: Baza + 6 - RD - Nume: Modem Status Register (MSR) Bit # Nume 0 Modificare Clear To Send de la ultima citire 1 Modificare Data Set Ready de la ultima citire 2 Indicator sonerie n ateptare 3 Modificare Data Carrier Detect de la ultima citire 4 Clear To Send 5 Data Set Ready 6 Indicator sonerie 7 Detecie purttoare

    Rata de transmisie se stabilete conform tabelului urmtor: Bps (bit/sec) Divizor Latch high byte Latch low byte

    50 2304 09h 00h 300 384 01h 80h 600 192 00h C0h

  • Teletransmisii de date Cap. 4 Interfee seriale

    61

    2400 48 00h 30h 4800 24 00h 18h 9600 12 00h 0Ch 19200 6 00h 06h 38400 3 00h 03h 57600 2 00h 02h 115200 1 00h 01h

    4.3. Interfaa serial RS-422 TIA/EIA-422-B (RS422) este un standard industrial ce precizeaz caracteristicile electrice ale unui circuit de interfa echilibrat. A fost introdus pentru a rezolva problemele de limitare ale standardelor nesimetrice (RS232). Acestea nu prezint imunitate la zgomote de mod comun )tipice n medii industriale). Un emitor RS-422 poate suporta pn la 10 sarcini (4k tipic pentru o unitate), poate transmite datele pn la 1200m i sunt garantate s suporte un curent de 20 mA pe o sarcin de 100 (adic 2V pe sarcin).

    Impedana receptorului trebuie s fie egal cu o unitate de sarcin (panta zonei gri din figura de mai sus). Zona de lucru a receptorului este definit ntre -10 i +10V (zona gri din figura de mai sus). Receptoarele RS-422 au pragurile de detecie de 200mV fa de ntregul domeniu de ieire al emitorului de 6V. De asemenea este garantat o margine de zgomot diferenial 1.8V ntre excursia de ieire a emitorului i pragurile receptorului.

    100 D

    V

    I

    3,25 mA

    -3,25 mA

    10 3

    -3 -10

    Fig. 4.15. Emitorul i regiunea de funcionare pentru RS-422

  • Teletransmisii de date Cap. 4 Interfee seriale

    62

    Pentru distane mari sau viteze mari de transmisie este recomandat utilizarea terminatorilor pentru a reduce reflexiile produse de nemperecherea de impedan dintre cablu i impedana de intrare a receptorului. n principiu standardele RS-422 i RS-485 sunt similare. Totui exist i diferene: etajul de ieire a emitorului, domeniul de mod comun al interfeei, rezistena de ieire a receptorului, i capabilitatea de sarcin a emitorului. Lungimea cablului i rata de transmisie sunt mrimi complementare. Figura 4.16 prezint o hart a regiunii operative a standardului RS-422 i comparaie cu alte standarde. Datele au fost obinute folosind cablu torsadat din Cu, cu capacitate de 50pF/m, terminat pe 100.

    Adaptarea de impedan printr-un terminator rezistiv paralel este o metod foarte popular, care aduce avantajul unor lungimi mari de cablu i rate de transmisie ridicate. Aceasta aduce rezistena Rt la valori apropiate de Z0 (fig. 4.7) i minimizeaz reflexiile. Conexiunea are i un dezavantaj al disiprii inutile de putere pe sarcina rezistiv, tensiune diferenial mai mic i margine de zgomot mai redus. Reelele RS-422 folosesc 3 tipuri de configuraii:

    Rata de transmisie (kbps)

    Lung

    imea

    cab

    lulu

    i (m

    )

    0.1 1.0 10 100 1000 10000

    1200

    25 RS-232

    RS-423 RS-422

    Fig. 4.16. Lungimea cablului vs. Rata de transmisie

    Rt

    R

    R E

    Fig. 4.17. Aplicaie multi-recepie cu terminator paralel

  • Teletransmisii de date Cap. 4 Interfee seriale

    63

    a) Configuraia punct-punct are un singur emitor i un singur receptor. Acestea pot fi gndite ca aplicaii RS-232 cu transmisie diferenial. b) Configuraia punct-multipunct este cea din figura 4.17 n care exist un emitor i mai multe receptoare pe acelai cablu. Numrul maxim de receptoare este 10 dac impedana receptorului este 4k i 20 dac aceasta este 8k. c) Configuraia multipunct-multipunct permite pe aceleai fire conectarea a mai multor emitoare i receptoare (fig. 4.18). Emitoarele 422 nu sunt proiectate pentru acest gen de configuraie, dar n anumite condiii acest lucru este posibil: diferene de potenial ntre masele emitoarelor, disputa ntre emitoare i capacitatea de comand a acestora.

    Dei standardul RS-422 nu prevede nici o specificaie special privind descrcrile ESD, porductorii de circuite integrate au dezvoltat totui un standard minim de protecie de 2kV pentru atingerea cu corpul omenesc. Software-ul asociat reelelor RS-422 difer de cel utilizat pentru comunicaiile pe interfaa serial standard. Aici se impune o comunicaie de tip master-slavepentru a evita coliziunile. Pentru a reduce costurile nu se implementeaz liniile suplimentare de control a comunicaiei. Tabelul urmtor rezum specificaiile electrice ale standardului RS-422. Tabelul 4.6. Specificaiile electrice ale RS-422

    Parametrul Condiii Min Max UM Tensiunea de ieire a emitorului n gol

    10 -10

    V V

    Tensiunea de ieire a emitorului n sarcin

    Rt=100 2 -2

    V V

    Rezistena de ieire a emitorului

    A la B 100 Curentul de scurtcircuit al emitorului

    pe ieire ctre mas

    150 mA

    Rt

    R

    R E

    E E E R

    Rt

    Fig. 4.18. Aplicaie multipunct-multipunct

  • Teletransmisii de date Cap. 4 Interfee seriale

    64

    Timpul de cretere al ieirii emitorului

    Rt=100 10 % din durata de bit

    Tensiunea de mod comun a emitorului

    Rt=100 3 V Sensibilitatea receptorului VCM7V 200 mV Tensiunea de mod comun a receptorului

    -7 7 V

    Rezistena de intrare a receptorului

    4000 Tensiunea diferenial a receptorului

    operaional: oponent:

    10 12

    V V

    4.4. Interfaa serial RS-423 Acest standard nu este folosit pe scar larg. n anii 80 HP producea calculatoarele cu interfa serial suportnd ambele standarde RS-232 i RS-423. RS-423 este referit fa de mas i este o mbuntire a fratelui mai btrn RS-232 permind distane mai mari i rate de transmisie superioare. Acest lucru se obine printr-o vitez de variaie (slew-rate) variabil (RS-232 are o vitez fix de 30V/s) ce poate fi programat funcie de lungimea cablului i de rat. RS-423 permite distane de maximum 1200m i viteze maxime de 100kbps.

    4.5. Interfaa serial RS-485 Ca i RS-422, i RS-485 este un sistem de comunicaie diferenial sau echilibrat. Semnalul apare ntre dou fire care transmit doar semnalul, ele fiind diferite de masa electric. Topologiile reelelor pot fi punct punct, punct - multipunct, multipunct multipunct. Numrul maxim de perechi emitor receptor pot fi de 32. Multe din caracteristicile emitoarelor i receptoarelor RS-485 sunt similare cu RS-422.Tensiunile de mod comun pe care le suport acestea sunt extinse de la +12 la -7 V datorit capabilitii strii de nalt impedan (tri-state). Figura 4.19 prezint o configuraie multipunct-multipunct tipic pe 2 fire. Se observ terminatoarele liniei la ambele capete, dar nu i la punctele din mijlocul liniei. Masa de semnal este de asemenea recomandat pentru a menine tensiunile de mod comun n limitele acceptate. RS-485 poate fi configurat i pe 4 fire (fig. 4.20). Dac n configuraia anterioar oricare din puncte putea fi Master i oricare Slave, n configuraia aceasta Masterul este cel al crui receptor este singurul de pe linie, restul fiind Slave. Aadar dou din fire sunt utilizate pentru transmiterea informaiei de la Master ctre receptoarele Slave, iar dou

  • Teletransmisii de date Cap. 4 Interfee seriale

    65

    pentru transmiterea informaiei de la emitoarele Slave ctre receptorul Master. n concluzie nodurile Slave pot comunica doar ctre nodul Master, nu i ntre ele. De aici i un avantaj al lipsei coliziunilor deoarece nodurile Slave nu vor vorbi niciodat simultan pentru c nu comunic ntre ele, i se poate realiza o comunicaie duplex. Pe durata ct un nod nu emite, emitorul este deconectat de la linia de transmisie. Sunt numeroase cazurile cnd sistemele prezint interfee RS-232 iar pentru a le conecta n reele RS-485 se folosesc adaptoare RS-232 RS-485. Pentru a putea conecta sau deconecta emitorul de la linie se poate folosi semnalul RTS. Cnd acesta este n 1 logic, emitorul este activ i devine inactiv pentru 0 logic. Ct timp este deconectat, alte noduri pot transmite date pe interfa. Figura 4.21. prezint forme de und specifice pentru convertorul RS-232 RS-485. Este important ca RTS s fie dus n 1 logic nainte ca data s fie transmis, i trebuie s rmn n aceast stare

    B A

    Rt

    R

    R E

    E R

    Rt

    R E E E

    T/R

    T/R T/R

    T/R

    100

    100 100 100

    100

    100

    100

    100

    A

    B

    B

    A

    A B A B B A

    A

    A

    B

    B

    Fig. 4.19. Aplicaie RS-485 multipunct-multipunct pe 2 fire

    B A

    Rt

    R

    R E

    E R

    Rt

    E

    T/E

    T/E T/E

    T/E

    100

    100 100 100

    100

    100

    100

    100

    A

    B

    B

    A

    A B A B B A

    A

    A

    B

    B

    E R

    Rt Rt

    MASTER

    SLAVE SLAVE

    SLAVE

    Fig. 4.20. Aplicaie RS-485 multipunct-multipunct pe 4 fire

  • Teletransmisii de date Cap. 4 Interfee seriale

    66

    pn la un moment ulterior transmiterii ultimul bit. Aceasta este realizat prin software-ul ce controleaz portul serial. Dac portul serial provine de la un sistem pentru care nu exist linia RTS disponibil atunci emitorul poate fi comandat chiar de ctre linia de date. Pentru aceasta linia de date este triggerat pentru a obine semnalul de validare a emitorului. Figura 4.22. prezint schema electric i formele de und asociate pentru aceast aplicaie. Este important de tiut c emitorul este dezactivat la un interval fix dup ultimul bit de date; tipic aceast durat se alege de lungimea unui caracter. Dac intervalul este prea scurt se poate pierde o parte din caracterul de transmis, iar dac este prea lung atunci sistemul va ncerca s porneasc emitorul nainte ca receptorul s fie pregtit pentru a primi date. Comunicaia pe RS-485 necesit un nod Master care s gestioneze comunicaia pe interfa. Fiecare nod Slave trebuie s aib o adres unic pentru a-l deosebi de celelalte. Implementarea pe 4 fire simplific modul de adresare. Preambulul poate fi chiar adresa nodului. Trebuie avut grija ca Masterul s nu cear informaii de la mai multe noduri simultan pentru evitarea coliziunilor. Implementarea pe 2 fire implic o complexitate mai mare. ntrzierea dintre sfritul transmisiei i momentul de nalt impedan este un parametru important. Dac Slave-ul ncepe s rspund nainte ca emitorul s fie inactiv, atunci poate aprea o coliziune. Dac reeaua are mai multe noduri Master atunci oricare poate iniia o transmisie i pot aprea coliziuni. n aceste condiii proiectantul trebuie s utilizeze metode sofisticate pentru detecia erorilor pentru autorizarea i retransmisia datelor n caz de eroare. Pentru reelele n care convertoare ce necesit alimentare din port, sau dac ntregul nod necesit aceasta, se pot folosi, pentru alimentarea sa,

    VSD

    VRTS

    VA

    VB E

    R

    R

    E

    R

    GRD

    RTS

    RxD

    TxD TxDTTLA

    B

    A

    B

    GRD

    Tx

    Rx

    VSD

    VRTS

    TxDTTL

    VA

    VB

    +6

    -6

    +6

    -6

    +3

    0

    0

    +3

    0

    +5

    0

    Convertor RS-232 TTL

    integrat

    Convertor TTL RS-485

    integrat

    emitorul RS-485

    dezactivat Fig. 4.21. Schema electric i forme de und pentru convertorul RS-232 RS-485

  • Teletransmisii de date Cap. 4 Interfee seriale

    67

    linii neutilizate ale portului (RTS, CTS,...) care se programeaz n 1 logic. Pentru cureni mai mari se pot suma liniile prin rezistene de valoare mic. Tabelul urmtor sintetizeaz caracteristicile electrice ale RS-485. Tabelul 4.7. Specificaiile electrice ale RS-485

    Parametrul Condiii Min Max UM Tensiunea de ieire a emitorului n gol

    1.5 -1.5

    6 -6

    V V

    Tensiunea de ieire a emitorului n sarcin

    Rt=54 1.5 -1.5

    5 -5

    V V

    Rezistena de ieire a emitorului A la B 100 Curentul de scurtcircuit al emitorului

    ieirea la +12 sau -7

    250 mA

    Timpul de cretere al ieirii emitorului

    Rt=54 Ct=50pF

    30 % din durata de bit

    Tensiunea de mod comun a emitorului

    Rt=54 -1 +3 V

    Sensibilitatea receptorului VCM7V 200 mV Tensiunea de mod comun a receptorului

    -7 12 V

    Rezistena de intrare a receptorului

    12k

    VSDVA

    VB E

    RE

    R

    GRD

    RxD

    TxD TxDTTLA

    B

    A

    B

    GRD

    Tx

    Rx

    VSD

    VSDTTL

    ENABLE

    VA

    VB

    +6

    -6

    +5

    0

    +3

    0

    0

    +3

    0

    +5

    0

    Convertor RS-232 TTL

    integrat

    Convertor TTL RS-485

    integrat

    emitorul RS-485 dezactivat

    R

    C

    Circuit retriggerabil

    ENA

    BLE

    1

    1 durata este stabilit de ctre componentele R i C, dar nceputul intervalului este determinat de frontul fiecrui bit

    Fig. 4.22. Schema electric i forme de und pentru convertorul RS-232 RS-485 cu

    triggerarea liniei de date

  • Teletransmisii de date Cap. 4 Interfee seriale

    68

    4.4. Interfaa USB

    Interfaa USB (Universal Serial Bus) a fost dezvoltat n 1995 de cteva din marile companii ale lumii (Compaq, Hewlett Packard, Intel, Lucent, Microsoft, NEC i Philips). Principalul scop al USB a fost acela de a defini o magistral de extindere care s permit adaugarea de periferice unui calculator PC la fel de simplu cum se conecteaz un telefon la linia telefonic. Astfel a ajuns s nlocuiasc majoritatea porturilor tradiionale a unui calculator cu o singur interfa ct mai prietenoas. USB este o interfa serial ce folosete protocoale predefinite. A fost proiectat s nu necesite ntreruperi specifice sau DMA, dar s poat recunoate dispozitivele ce sunt conectate din mers. Pentru a instala un dispozitiv nou nu sunt necesare cunotine speciale, i orice dispozitiv s fie distict fa de altele, iar driver-ul corect va fi utilizat n mod automat. Interfaa este de tip master-slave. A fost dedicat perifericelor de birou dar a nlocuit cele mai multe dispozitive care se conectau pe portul paralel (LPT) sau pe portul serial (COM). Exist dou versiuni de interfa USB: versiunea 1.X suport dou viteze (12Mbps i 1.5Mbps) - vitez mai mic este destinat dispozitivelor ieftine (mouse de exemplu) i nu necesit cablu ecranat; USB 2.0 ce suport vitez ridicat (480Mbps) pentru, practic, orice tip de aplicaie. Aceast specificaie a fost introdus ca rspuns la viteza ridicat a interfeei Firewire.

    Magistrala este implementat fizic prin 4 fire, dou pentru alimentare i dou pentru date, conectorul rezultnd astfel cu 4 pini (figura 4.23.a). Datele sunt vehiculate diferenial pe 2 fire torsadate, dar i unele

    referite fa de mas. Fiecare din semnalele de pe cele 2 fire sunt referite fa de mas. Al 4 le-a semnal este o tensiune de alimentare (+5V) i poate fi folosit s alimenteze dispozitivul periferic. n figura 4.23.b sunt prezentate cele 4 tipuri de conectori. Conectorii de tip A i B au 4 contacte, numerotate ca n figur. Contactele de date sunt pe mijloc (conectorul A) i respectiv pe partea stng (conectorul B), iar cele de putere pe margine (conector A) i respectiv pe partea dreapt

    +5V D+ D-

    GND

    +5V = 1 D+ = 3 D- = 2 GND = 4

    ... 1 2 3 4

    4 3

    2 1

    a) b)

    1 2 3 4 5

    Conector A Conector B Conector mini USB

    Fig. 4.23. Cablul i conectorul USB

  • Teletransmisii de date Cap. 4 Interfee seriale

    69

    (conector B). Conectorul mini USB (mini B) are 5 contacte din care contactul 4 se numete ID i nu este conectat. Primele 3 au aceeai numerotare, iar pinul 5 este masa (GND). Toate 3 tipurile au un contact metalic ce le nconjoar, la care este legat ecranul cablului. Exist 3 tipuri de cabluri: - un cablu de vitez ridicat cu conector A la un capt i conector B sau mini B la cellalt. - un cablu de captur de vitez mare, conectat direct la echipamentul periferic sau cu un conector specific, i la celalalt capt cu un conector de tip A. - un cablu similar cu cel de-al doilea, dar de vitez sczut. Lungimea maxim a cablului depinde de viteza cu care se face comunicaia, de atenuare i de ntrzierea de propagare. Pentru un cablu de vitez redus timpii de cretere i cei de cdere fixeaz lungimea maxim. De aceea cablul de vitez redus este mai scurt dect cel de vitez ridicat. Lungimea oricrui cablu este limitat la 5m. Astfel cel mai ndeprtat perfieric nu poate fi la mai mult de 30m de controller. Un dispozitiv sau un hub poate alimenta doar din portul master (upstream). Exist periferice care nu folosesc sursa de alimentare de pe interfa, ns exist i periferice care se alimenteaz din interfa. Curentul maxim ce poate fi consumat este de 100mA n mod normal sau 500mA dac este permis de ctre unitatea gazd. Cnd perifericul este suspendat consumul cade sub 0.5 mA. Tensinea poate scdea la periferic pn la 4.35V i n plus pe linie pot aprea parazii tranzitorii de pn la 0.4V datorit dispozitivelor ce se conecteaz n acel moment. Astfel nici un dispozitiv nu are voie s trag un curent mai mare de 100mA nainte de a fi configurat. n starea suspendat consumul trebuie s fie mai mic de 0.5 mA datorit rezistenei de 1.5k spre alimentare care consuma 0.3 mA, dispozitivului i rmn doar 0.2 mA. Dac dispozitivul conine un microcontroller acesta trebuie s aib un curent care s ndeplineasc aceste cerine n modul sleep.

    4.4.1. Arhitectura USB USB este o arhitectur de tip stea etajat cu un singur controller gazd (host) i pn la 127 de dispozitive sclav (slave). Controllerul este conectat ntr-un hub (de regul integrat n calculator), iar acesta permite ataarea unui numr de dispozitive. Fiecare conector poate fi continuat cu nc un hub, amd, dar cu anumite restricii. Numrul maxim de ramificaii este de 6.

  • Teletransmisii de date Cap. 4 Interfee seriale

    70

    Limitarea numrului de dispozitive provine din faptul c lungimea cmpului de adres este de 7 bii, iar valoarea 0 nu poate fi utilizat deoarece are o semnificaie aparte. n majoritatea sistemelor se ajunge la o limitare de band nainte de a atinge cele 127 de periferice. Din cele 5 hub-uri de pe o ramur, cel puin dou trebuie s aib alimentare proprie.

    Toate comunicaiile pe magistral sunt iniiate de ctre controllerul gazd. Un periferic nu poate iniia comunicaia i trebuie s atepte s fie ntrebat pentru a tranfera datele ctre controller. Singura excepie este atunci cnd un dispozitiv este n modul suspend i poate semnala controllerul cu un semnal de trezire.

    Controller

    Hub rdcin

    Hub

    Hub

    Hub Hub

    Hub

    Hub Hub

    Periferic Periferic

    PerifericPeriferic

    Periferic Periferic

    Periferic

    Fig. 4.24. Arhitectura reelei USB