Satura rādītājs:

UART KOMUNIKĀCIJAS PAMATI: 16 soļi
UART KOMUNIKĀCIJAS PAMATI: 16 soļi

Video: UART KOMUNIKĀCIJAS PAMATI: 16 soļi

Video: UART KOMUNIKĀCIJAS PAMATI: 16 soļi
Video: ESP8266 ESP01 WI-FI-UART | Программирование LDmicro-Roboremo 2024, Jūlijs
Anonim
UART KOMUNIKĀCIJAS PAMATI
UART KOMUNIKĀCIJAS PAMATI

Atcerieties, kad printeriem, pelēm un modemiem bija biezi kabeļi ar šiem milzīgajiem neveiklajiem savienotājiem? Tie, kas burtiski bija jāieskrūvē datorā? Šīs ierīces, iespējams, izmantoja UART, lai sazinātos ar datoru. Lai gan USB ir gandrīz pilnībā nomainījis šos vecos kabeļus un savienotājus, UARTs noteikti nav pagātne. Jūs atradīsit UART, kas tiek izmantoti daudzos DIY elektronikas projektos, lai savienotu GPS moduļus, Bluetooth moduļus un RFID karšu lasīšanas moduļus ar Raspberry Pi, Arduino vai citiem mikrokontrolleriem.

UART apzīmē universālo asinhrono uztvērēju/raidītāju. Tas nav saziņas protokols, piemēram, SPI un I2C, bet gan fiziska ķēde mikrokontrollerī vai atsevišķa IC. UART galvenais mērķis ir sērijveida datu pārraide un saņemšana.

Viena no labākajām UART lietām ir tā, ka datu pārsūtīšanai starp ierīcēm tā izmanto tikai divus vadus. UART principi ir viegli saprotami, bet, ja neesat izlasījis šīs sērijas pirmo daļu - SPI sakaru protokola pamati, tā varētu būt laba vieta, kur sākt.

1. solis: IEVADS UART KOMUNIKĀCIJĀ

UART komunikācijā divi UART tieši sazinās viens ar otru. Nosūtītājs UART pārvērš paralēlus datus no kontrolierīces, piemēram, centrālā procesora, sērijveida formā, pārraida tos sērijveidā uz uztverošo UART, kas pēc tam pārvērš sērijas datus atpakaļ paralēlos datos uztverošajai ierīcei. Lai pārsūtītu datus starp diviem UART, ir nepieciešami tikai divi vadi. Dati plūst no nosūtītāja UART Tx tapas uz saņēmēja UART Rx tapu:

2. darbība. Datu plūsmas no nosūtītāja UART Tx tapas līdz uztverošā UART Rx tapai:

Datu plūsmas no nosūtītāja UART Tx tapas līdz uztverošā UART Rx tapai
Datu plūsmas no nosūtītāja UART Tx tapas līdz uztverošā UART Rx tapai

3. darbība:

UART pārraida datus asinhroni, kas nozīmē, ka nav pulksteņa signāla, lai sinhronizētu bitu izvadi no nosūtītāja UART ar uztverošā UART bitu paraugu ņemšanu. Pulksteņa signāla vietā nosūtītājs UART pievieno pārsūtāmajai datu pakotnei sākuma un beigu bitus. Šie biti nosaka datu paketes sākumu un beigas, lai saņemošā UART zinātu, kad sākt lasīt bitus.

Kad saņemošais UART nosaka sākuma bitu, tas sāk lasīt ienākošos bitus noteiktā frekvencē, kas pazīstama kā bodu ātrums. Bodu ātrums ir datu pārsūtīšanas ātruma mērs, kas izteikts bitos sekundē (bps). Abām UART ierīcēm jādarbojas ar aptuveni tādu pašu pārraides ātrumu. Bodu pārraides ātrums starp raidīšanas un saņemšanas UART var atšķirties tikai par aptuveni 10%, pirms bitu laiks kļūst pārāk tālu.

4. solis:

Attēls
Attēls

Abām UART ir arī jākonfigurē tā, lai tās nosūtītu un saņemtu to pašu datu pakešu struktūru.

5. solis: KĀ UART UZSTĀDĀS

UART, kas gatavojas pārsūtīt datus, saņem datus no datu kopnes. Datu kopni izmanto, lai nosūtītu datus uz UART ar citu ierīci, piemēram, CPU, atmiņu vai mikrokontrolleri. Dati tiek pārsūtīti no datu kopnes uz pārsūtītāju UART paralēli. Pēc tam, kad nosūtītājs UART iegūst paralēlus datus no datu kopnes, tas pievieno sākuma bitu, paritātes bitu un pieturas bitu, izveidojot datu paketi. Tālāk datu pakete tiek izvadīta sērijveidā, pa bitam pie Tx tapas. Saņemošā UART nolasa datu paketi pa bitam pie savas Rx tapas. Saņemošais UART pārvērš datus atpakaļ paralēlā formā un noņem sākuma bitu, paritātes bitu un apturēšanas bitus. Visbeidzot, saņemošais UART pārsūta datu paketi paralēli datu kopnei uztvērēja galā:

6. darbība. Attēls, kā darbojas UART

Attēls Kā darbojas UART
Attēls Kā darbojas UART

7. darbība:

UART pārraidītie dati tiek sakārtoti paketēs. Katra pakete satur 1 sākuma bitu, 5 līdz 9 datu bitus (atkarībā no UART), papildu paritātes bitu un 1 vai 2 pieturas bitus:

8. solis: UART pārsūtītie dati tiek sakārtoti pakešu attēlā

UART pārsūtītie dati ir sakārtoti pakešu attēlā
UART pārsūtītie dati ir sakārtoti pakešu attēlā

9. darbība

START BIT

UART datu pārraides līnija parasti tiek turēta augstsprieguma līmenī, kad tā nepārraida datus. Lai sāktu datu pārsūtīšanu, nosūtītājs UART vienu pulksteņa ciklu pārraida pārraides līniju no augstas uz zemu. Kad uztverošā UART nosaka pāreju no augsta uz zemu spriegumu, tā sāk nolasīt datu rāmja bitus ar bodu ātruma frekvenci.

DATU RĀMATS

Datu rāmis satur faktiskos pārsūtāmos datus. Tas var būt no 5 līdz 8 bitiem garš, ja tiek izmantots paritātes bits. Ja netiek izmantots paritātes bits, datu rāmis var būt 9 bitus garš. Vairumā gadījumu dati vispirms tiek nosūtīti ar vismazāk nozīmīgo bitu.

PARITY

Paritāte raksturo skaitļa vienmērīgumu vai nepāra. Paritātes bits ir veids, kā saņēmējs UART var noteikt, vai pārraides laikā ir mainījušies kādi dati. Bitus var mainīt, izmantojot elektromagnētisko starojumu, neatbilstošu bodu ātrumu vai tālsatiksmes datu pārsūtīšanu. Pēc tam, kad saņēmēja UART nolasa datu rāmi, tā saskaita bitu skaitu ar vērtību 1 un pārbauda, vai kopsumma ir pāra vai nepāra skaitlis. Ja paritātes bits ir 0 (pāra paritāte), 1 bitu datu rāmī jāsaskaita ar pāra skaitli. Ja paritātes bits ir 1 (nepāra paritāte), 1 bitu datu rāmī jāsasniedz nepāra skaitlis. Kad paritātes bits atbilst datiem, UART zina, ka pārraidei nebija kļūdu. Bet, ja paritātes bits ir 0 un kopsumma ir nepāra; vai paritātes bits ir 1, un kopējais ir pat, UART zina, ka biti datu rāmī ir mainījušies.

STOP BITS

o signalizē par datu paketes beigām, sūtītājs UART vismaz divus bitus ilgst pārraida datu pārraides līniju no zema sprieguma uz augstu spriegumu.

10. solis: UART PĀRRAIDES SOLI

1. Nosūtītājs UART saņem datus paralēli no datu kopnes:

11. darbība. Attēlu pārraide UART saņem datus paralēli no datu kopnes

Attēlu pārraide UART saņem datus paralēli no datu kopnes
Attēlu pārraide UART saņem datus paralēli no datu kopnes

12. solis: 2. Nosūtītājs UART datu rāmim pievieno sākuma bitu, paritātes bitu un apturēšanas bitu (-us):

2. Nosūtītājs UART datu rāmim pievieno sākuma bitu, paritātes bitu un apturēšanas bitu (-us)
2. Nosūtītājs UART datu rāmim pievieno sākuma bitu, paritātes bitu un apturēšanas bitu (-us)

13. solis: 3. visa pakete tiek sūtīta sērijveidā no nosūtītāja UART uz saņemošo UART. UART saņemošie UART paraugi datu līnijai ar iepriekš konfigurētu Baud ātrumu:

3. visa pakete tiek sūtīta sērijveidā no nosūtītāja UART uz saņemošo UART. UART saņemošie UART paraugi datu līnijai ar iepriekš konfigurētu Baud ātrumu
3. visa pakete tiek sūtīta sērijveidā no nosūtītāja UART uz saņemošo UART. UART saņemošie UART paraugi datu līnijai ar iepriekš konfigurētu Baud ātrumu

14. solis: 4. Saņemošais UART no datu rāmja atceļ sākuma bitu, paritātes bitu un apturēšanas bitu:

4. Saņemošais UART no datu rāmja atceļ sākuma bitu, paritātes bitu un apturēšanas bitu
4. Saņemošais UART no datu rāmja atceļ sākuma bitu, paritātes bitu un apturēšanas bitu

15. solis: 5. UART saņemošais UART pārvērš seriālos datus paralēlos un pārsūta tos uz datu kopni saņemšanas beigās:

5. UART saņemošais UART pārvērš seriālos datus paralēlos un pārsūta tos uz datu kopni saņemšanas beigās
5. UART saņemošais UART pārvērš seriālos datus paralēlos un pārsūta tos uz datu kopni saņemšanas beigās

16. solis: UARTS priekšrocības un trūkumi

Neviens sakaru protokols nav perfekts, bet UART ir diezgan labs savā darbā. Šeit ir daži plusi un mīnusi, kas palīdzēs jums izlemt, vai tie atbilst jūsu projekta vajadzībām:

Priekšrocības

Izmanto tikai divus vadus Nav nepieciešams pulksteņa signāls Ir paritātes bits, kas ļauj pārbaudīt kļūdas Datu paketes struktūru var mainīt, ja vien abas puses tam ir iestatītas Labi dokumentēta un plaši izmantota metode

Datu rāmja izmērs ir ierobežots līdz ne vairāk kā 9 bitiem. Neatbalsta vairākas vergu vai vairākas galvenās sistēmas Katras UART datu pārraides ātrumam jābūt 10% robežās viens no otra. Turpiniet šīs sērijas trešajā daļā, Pamati I2C sakaru protokols, lai uzzinātu par citu elektronisko ierīču saziņas veidu. Vai arī, ja vēl neesat to izdarījis, iepazīstieties ar pirmo daļu - SPI sakaru protokola pamati.

Un, kā vienmēr, dariet man zināmu komentāros, ja jums ir jautājumi vai kaut kas cits jāpievieno! Ja jums patika šis raksts un vēlaties redzēt vairāk līdzīgu, noteikti sekojiet

Sveicieni

M. Junaids

Ieteicams: