Comunicarea UART

  • View
    20

  • Download
    0

Embed Size (px)

DESCRIPTION

Uart

Text of Comunicarea UART

Comunicarea UART

UART(Universal Asynchronous Receiver/Transmitter)este ceamai simpl interfa serial asincron care de asemenea este numit ACIA (Asynchronous Communication Interface Adapter).

UART este asincon pentru c nu se transmite semnal de ceas prin linia de date serial. Receptorul recunoate valorile binare individuale fr o linie comun de ceas.

Interfaa UART const din dou pri:

un receptor (receiver - Rx) care convertete un flux serial de bii n date paralele (cuvinte) pentru microprocesor;

un transmitor (transmitter - Tx) care convertete date paralele de la microprocesor ntr-un flux serial de bii, pentru transmisie.

Diagrama funcional UART

UART furnizezaz i informaie de stare, cum ar fi receptorul este plin (datele au ajuns) sau transmitorul este gol (o transmisie n curs s-a terminat)

Interfaa Serial Asincron nu are un mecanism de sincronizare ntre module (interlocutori). Sincronizarea pe fluxuri de date este realizat de fiecare interlocutor n parte. Pentru a realiza sincronizarea pe fluxuri de date, n fluxul de date este introdus informaia tehnic despre transfer, cum ar fi:

-Start Transfer;

-Paritatatea;

- Stop sfritul transferului;

Interlocutorii se sincronizeaz folosind informaia tehnic. Pentru a transfera un numr de uniti (o cantitate anumit) de date, va trebui anexat i transferat i informaia tehnic. Un transfer de date mpreun cu informaia tehnic ce l nsoete, compune unFrame de date.

Formatul datelor transmise utilizeaz la nceputul transmisiei pentru fiecare caracter un bit de start i la sfrit unul sau doi bii de stop.Receptorul i sincronizeaz ceasul dup recepionarea bitului de start i apoi eantioneaz biii de date (7 sau 8 n funcie de configuraia sistemului). Dac receptorul nu primete secvena de stop, se presupune c ceasul su este defazat fa de al emitorului i se declar o eroare de cadru.

Protocolul hardware de comunicare prin framuri

n starea pasiv se distinge:

a.Linia de transfereste setat (1 logic);

b. nceputul transferului este semnalizat de cte o resetare a liniei, acest bit de informaie este numitStart Bit;

c.Se vor transfera un set de bii consecutivi conform configuraiei liniei de transfer cu o configuraie de 5-10 bii.

d.Urmeaz bitul de paritate, ce ofer posibilitatea verificrii integritii datelor transferate.

Detecia erorilor de paritate

Pentru a detecta erorilor, multe sisteme folosesc bitul de paritate, pentru verificarea datelor recepionate. Bitul de paritate e calculat de transmitor i e inclus n cadrul de date. Receptorul calculeaz paritatea pentru fiecare octet recepionat. Dac bitul de paritate calculat este identic cu cel recepionat, receptorul presupune c nu sunt erori.

Calculul paritii se evaluiaz dup logica XOR ntre biii de date P=^DATA. Pentru o transmisie corect, emitorul i receptorul trebuie s utilizeze acelai tip de paritate (P=0 even parity (par), sau P=1 odd parity(impar)).

e. Urmeaz un set de indicatori care se numescStop Bit,care seteaz bus-ul. Lungimea indicatoruluiStop poate fi [1; 1,5;2] bii. Valoarea bitului de stop depinde de eroarea vitezei de transfer dintre transmitor i receptor.

Configuraia unui frame de obicei este prezentat printr-o secven de form:9600 8 N1unde:

9600 vitez de transfer n baud/sec;8 mrimea datelor;N excluderea bitului de paritate (P includerea bitului de paritate);1 numrul de biide stop.

Viteza de transfer se msoar n baud/sec, care reprezint numrul de bii de informaie, att tehnic ct i de date transferate prin interfaa serial (8 bii/sec 11 baud/secund). Viteza exprimat n bii pe secund va reprezenta viteza de transfer a datelor excluznd informaia tehnic.

Sincronizarea

Pentru c datele s fie transferate cu siguran, nainte de a ncepe un transfer, interlocutorii trebuie s adopte aceeai vitez de transfer. Din motive c interlocutorii pot avea diferite metode de calcul/setare a vitezei de transfer, foarte frecvent apare situaia de apariie a unei erori n cadrul liniei de transfer. Eroarea maxim admisibil a vitezei de transfer este