Sisukord:

UART -KOMMUNIKATSIOONI ALUSED: 16 sammu
UART -KOMMUNIKATSIOONI ALUSED: 16 sammu

Video: UART -KOMMUNIKATSIOONI ALUSED: 16 sammu

Video: UART -KOMMUNIKATSIOONI ALUSED: 16 sammu
Video: HAL: #2 How to - GPIO Interrupt 2024, Juuli
Anonim
UART -KOMMUNIKATSIOONI ALUSED
UART -KOMMUNIKATSIOONI ALUSED

Mäletate, kui printeritel, hiirtel ja modemitel olid paksud kaablid nende tohutute kohmakate pistikutega? Need, mis tuli sõna otseses mõttes arvutisse keerata? Need seadmed kasutasid tõenäoliselt arvutiga suhtlemiseks UART -sid. Kuigi USB on need vanad kaablid ja pistikud peaaegu täielikult asendanud, pole UART -id kindlasti minevik. Leiate UART -e, mida kasutatakse paljudes isetegemise elektroonika projektides GPS -moodulite, Bluetooth -moodulite ja RFID -kaardilugeja moodulite ühendamiseks oma Raspberry Pi, Arduino või muude mikrokontrolleritega.

UART tähistab universaalset asünkroonset vastuvõtjat/saatjat. See ei ole suhtlusprotokoll nagu SPI ja I2C, vaid füüsiline vooluring mikrokontrolleris või eraldiseisev IC. UART peamine eesmärk on jadaandmete edastamine ja vastuvõtmine.

Üks parimaid asju UART -i puhul on see, et see kasutab seadmete vahel andmete edastamiseks ainult kahte juhtmest. UART -i põhimõtteid on lihtne mõista, kuid kui te pole selle sarja esimest osa, SPI kommunikatsiooniprotokolli põhitõed, lugenud, võib see olla hea koht alustamiseks.

1. samm: UART -KOMMUNIKATSIOONI SISSEJUHATUS

UART -suhtluses suhtlevad kaks UART -i otse üksteisega. Edastav UART teisendab paralleelandmed juhtimisseadmest, näiteks protsessorist, jadavormi, edastab need järjestikku vastuvõtvale UART -le, mis seejärel muudab jadaandmed vastuvõtva seadme jaoks paralleelseteks andmeteks. Andmete edastamiseks kahe UART -seadme vahel on vaja ainult kahte juhtmest. Andmed liiguvad edastava UART -i Tx -tihvtist vastuvõtva UART -i Rx -tihvti:

Samm 2: Andmevood edastava UART -i Tx -tihvtist vastuvõtva UART -i Rx -pinni:

Andmevood edastava UART -i Tx -tihvtist vastuvõtva UART -i Rx -pinni
Andmevood edastava UART -i Tx -tihvtist vastuvõtva UART -i Rx -pinni

3. samm:

UART -id edastavad andmeid asünkroonselt, mis tähendab, et puudub kella signaal, mis sünkrooniks edastava UART -i bittide väljundi vastuvõtva UART -i bittide proovivõtuga. Kella signaali asemel lisab edastav UART ülekantavale andmepaketile algus- ja lõpetamisbitte. Need bitid määravad andmepaketi alguse ja lõpu, nii et vastuvõttev UART teab, millal alustada bittide lugemist.

Kui vastuvõttev UART tuvastab stardibiti, hakkab see sissetulevaid bitte lugema kindlal sagedusel, mida nimetatakse andmeedastuskiiruseks. Baudikiirus on andmeedastuskiiruse näitaja, väljendatuna bittides sekundis (bps). Mõlemad UART -seadmed peavad töötama umbes sama kiirusega. Edastava ja vastuvõtva UART -i edastuskiirus võib erineda ainult umbes 10%, enne kui bittide ajastus liiga kaugele jõuab.

4. samm:

Pilt
Pilt

Mõlemad UART -id peavad olema konfigureeritud edastama ja vastu võtma sama andmepaketi struktuuri.

5. samm: KUIDAS UART TÖÖTAB

Andmeid edastama hakkav UART võtab andmed vastu andmesiinilt. Andmesiini kasutatakse andmete saatmiseks UART -ile teise seadme, näiteks protsessori, mälu või mikrokontrolleri kaudu. Andmed edastatakse andmesiinist edastavasse UART -i paralleelselt. Pärast seda, kui edastav UART saab andmesiinilt paralleelandmed, lisab see andmepaketi, alustades biti, pariteetbiti ja stopp -bitti. Järgmisena väljastatakse andmepakett järjestikku, Tx tihvti haaval. Vastuvõttev UART loeb andmepaketti oma Rx -tihvti haaval. Seejärel teisendab vastuvõttev UART andmed tagasi paralleelsesse vormi ja eemaldab stardibiti, pariteedibiti ja stopp -bitid. Lõpuks edastab vastuvõttev UART andmepaketi paralleelselt vastuvõtvas otsas asuva andmesiiniga:

6. samm: kujutage ette, kuidas UART töötab

Pilt Kuidas UART töötab
Pilt Kuidas UART töötab

7. samm:

UART -i edastatud andmed on korraldatud pakettideks. Iga pakett sisaldab 1 algusbitti, 5 kuni 9 andmebitti (sõltuvalt UART -st), valikulist pariteedibitti ja 1 või 2 stopp -bitti:

8. samm: UART -i edastatud andmed on organiseeritud pakettideks

UART -i edastatud andmed on organiseeritud pakettideks
UART -i edastatud andmed on organiseeritud pakettideks

9. samm:

START BIT

UART -andmeedastusliin on tavaliselt kõrgepinge tasemel, kui see andmeid ei edasta. Andmete edastamise alustamiseks tõmbab edastav UART ülekandeliini ühelt tsüklilt kõrgelt madalale. Kui vastuvõttev UART tuvastab ülemineku kõrgelt madalpingele, hakkab ta andmekaadris bitte lugema edastuskiiruse sagedusel.

ANDMETE RAAM

Andmeraam sisaldab tegelikult edastatavaid andmeid. Paarsusbiti kasutamisel võib see olla 5 kuni 8 bitti pikk. Kui pariteedibitti ei kasutata, võib andmeraam olla 9 bitti pikk. Enamasti saadetakse andmed kõigepealt kõige vähem olulise bitiga.

PARITEET

Pariteet kirjeldab arvu ühtlust või veidrust. Paarsusbitt on vastuvõtva UART -i viis teatada, kas edastamise ajal on andmeid muutunud. Bitte saab muuta elektromagnetilise kiirguse, sobimatu edastuskiiruse või pikamaa andmeedastuse abil. Pärast seda, kui vastuvõttev UART loeb andmeraami, loendab see bittide arvu väärtusega 1 ja kontrollib, kas kogusumma on paaris või paaritu. Kui pariteedibitt on 0 (paarispariteet), peaksid andmekaadris olevad 1 bitti moodustama paarisarvu. Kui pariteedibitt on 1 (paaritu pariteet), peaksid andmekaadris olevad 1 bitti moodustama paaritu arvu. Kui pariteedibitt vastab andmetele, teab UART, et edastamisel ei esinenud vigu. Aga kui pariteetbitt on 0 ja kogusumma on paaritu; või pariteedibitt on 1 ja kogusumma on paaris, UART teab, et andmekaadri bitid on muutunud.

STOP BITS

o andmesidepaketi lõppu märku andev UART juhib andmeedastusliini madalpingelt kõrgepingele vähemalt kaheks bitiks.

10. samm: UART -ÜLEKANDE SAMMUD

1. Edastav UART võtab andmeid paralleelselt andmesiinilt:

11. samm: pildi edastamine UART võtab andmeid andmesiinist paralleelselt vastu

Pildiedastus UART võtab andmeid andmesiinist paralleelselt vastu
Pildiedastus UART võtab andmeid andmesiinist paralleelselt vastu

Samm 12: 2. Edastav UART lisab andmeraamile stardibiti, pariteedibiiti ja stopp -bitid:

2. edastav UART lisab andmeraamile algusbiti, pariteedibiiti ja peatamisbitti (d)
2. edastav UART lisab andmeraamile algusbiti, pariteedibiiti ja peatamisbitti (d)

Samm 13: 3. Kogu pakett saadetakse järjestikku edastavalt UART -lt vastuvõtvale UART -le. Vastuvõttev UART proovib andmeliini eelkonfigureeritud baudikiirusega:

3. kogu pakett saadetakse järjestikku edastavalt UART -lt vastuvõtvale UART -le. Vastuvõttev UART proovib andmeliini eelkonfigureeritud baudikiirusega
3. kogu pakett saadetakse järjestikku edastavalt UART -lt vastuvõtvale UART -le. Vastuvõttev UART proovib andmeliini eelkonfigureeritud baudikiirusega

14. samm: 4. Vastuvõttev UART loobub andmeraamist stardibiti, pariteedibiiti ja stopp -biti:

4. Vastuvõttev UART loobub andmeraamist stardibiti, pariteedi- ja seiskamisbiti
4. Vastuvõttev UART loobub andmeraamist stardibiti, pariteedi- ja seiskamisbiti

Samm 15: 5. Vastuvõttev UART teisendab jadaandmed paralleelselt tagasi ja edastab need vastuvõtmise lõpus andmesiini:

5. Vastuvõttev UART teisendab jadaandmed paralleelseteks ja edastab need vastuvõtmise lõpus andmesiini
5. Vastuvõttev UART teisendab jadaandmed paralleelseteks ja edastab need vastuvõtmise lõpus andmesiini

16. samm: UARTSI eelised ja puudused

Ükski suhtlusprotokoll pole täiuslik, kuid UART -id on oma tegemistes päris head. Siin on mõned plussid ja miinused, mis aitavad teil otsustada, kas need sobivad teie projekti vajadustega.

EELISED

Kasutab ainult kahte juhtmest Kella signaali ei ole vaja Omab pariteedibitti, mis võimaldab vigade kontrollimist Andmepaketi struktuuri saab muuta seni, kuni mõlemad pooled on selleks seadistatud Hästi dokumenteeritud ja laialdaselt kasutatav meetod KÕRVALDUSED

Andmekaadri suurus on piiratud maksimaalselt 9 bitiga. Ei toeta mitut alam- või mitut peasüsteemi. Iga UART -i edastuskiirus peab olema üksteisest 10% piires. Jätkake selle seeria kolmanda osaga I2C kommunikatsiooniprotokoll, et saada teavet elektrooniliste seadmete teise suhtlusviisi kohta. Või kui te pole seda juba teinud, vaadake esimest osa SPI kommunikatsiooniprotokolli põhitõed.

Ja nagu alati, andke mulle kommentaarides teada, kui teil on küsimusi või midagi muud lisada! Kui teile see artikkel meeldis ja soovite rohkem sarnaseid näha, järgige kindlasti

Lugupidamisega

M. Junaid

Soovitan: