Innehållsförteckning:

GRUNDLÄGGANDE FÖR UARTKOMMUNIKATION: 16 steg
GRUNDLÄGGANDE FÖR UARTKOMMUNIKATION: 16 steg

Video: GRUNDLÄGGANDE FÖR UARTKOMMUNIKATION: 16 steg

Video: GRUNDLÄGGANDE FÖR UARTKOMMUNIKATION: 16 steg
Video: SKR 1.4 - TMC2226 UART with Sensorless Homing 2024, November
Anonim
GRUNDLÄGGANDE I UART -KOMMUNIKATION
GRUNDLÄGGANDE I UART -KOMMUNIKATION

Kommer du ihåg när skrivare, möss och modem hade tjocka kablar med de enorma klumpiga kontakterna? De som bokstavligen måste skruvas in i din dator? Dessa enheter använde förmodligen UART för att kommunicera med din dator. Medan USB nästan helt har ersatt de gamla kablarna och kontakterna, är UART definitivt inte ett minne blott. Du hittar UART som används i många DIY -elektronikprojekt för att ansluta GPS -moduler, Bluetooth -moduler och RFID -kortläsarmoduler till din Raspberry Pi, Arduino eller andra mikrokontroller.

UART står för Universal Asynchronous Receiver/Transmitter. Det är inte ett kommunikationsprotokoll som SPI och I2C, utan en fysisk krets i en mikrokontroller eller en fristående IC. En UARTs främsta syfte är att överföra och ta emot seriell data.

En av de bästa sakerna med UART är att den bara använder två ledningar för att överföra data mellan enheter. Principerna bakom UART är lätta att förstå, men om du inte har läst del ett av denna serie, Grunderna i SPI -kommunikationsprotokollet, kan det vara ett bra ställe att börja.

Steg 1: INLEDNING TILL UART -KOMMUNIKATION

I UART -kommunikation kommunicerar två UARTs direkt med varandra. Den sändande UART konverterar parallella data från en styrenhet som en CPU till serieform, sänder den i serie till den mottagande UART, som sedan omvandlar seriella data till parallella data för den mottagande enheten. Endast två ledningar behövs för att överföra data mellan två UART. Data flödar från Tx -stiftet på den sändande UART till Rx -stiftet på den mottagande UART:

Steg 2: Dataflöden från Tx -stiftet för den överförande UART till Rx -stiftet för den mottagande UART:

Dataflöden från Tx -stiftet för den överförande UART till Rx -stiftet för den mottagande UART
Dataflöden från Tx -stiftet för den överförande UART till Rx -stiftet för den mottagande UART

Steg 3:

UART överför data asynkront, vilket innebär att det inte finns någon klocksignal för att synkronisera utsignalen från bitar från den sändande UART till samplingen av bitar av den mottagande UART. I stället för en klocksignal lägger den sändande UART start- och stoppbitar till datapaketet som överförs. Dessa bitar definierar början och slutet av datapaketet så att den mottagande UART vet när den ska börja läsa bitarna.

När den mottagande UART detekterar en startbit börjar den läsa de inkommande bitarna vid en specifik frekvens som kallas baudhastighet. Baudhastighet är ett mått på hastigheten för dataöverföring, uttryckt i bitar per sekund (bps). Båda UART måste fungera med ungefär samma överföringshastighet. Överföringshastigheten mellan sändande och mottagande UART kan bara skilja sig med cirka 10% innan tidpunkten för bitar blir för långt bort.

Steg 4:

Bild
Bild

Båda UART måste också konfigureras för att överföra och ta emot samma datapaketstruktur.

Steg 5: HUR UART FUNGERAR

UART som ska överföra data tar emot data från en databuss. Databussen används för att skicka data till UART av en annan enhet som en CPU, minne eller mikrokontroller. Data överförs från databussen till den sändande UART i parallell form. Efter att den sändande UART har fått parallella data från databussen lägger den till en startbit, en paritetsbit och en stoppbit, vilket skapar datapaketet. Därefter matas datapaketet ut seriellt, bit för bit vid Tx -stiftet. Den mottagande UART läser datapaketet bit för bit vid sin Rx -pin. Den mottagande UART konverterar sedan data tillbaka till parallell form och tar bort startbiten, paritetsbiten och stoppbitar. Slutligen överför den mottagande UART datapaketet parallellt med databussen i den mottagande änden:

Steg 6: Bild hur UART fungerar

Bild Hur UART fungerar
Bild Hur UART fungerar

Steg 7:

UART -överförd data är organiserad i paket. Varje paket innehåller 1 startbit, 5 till 9 databitar (beroende på UART), en valfri paritetsbit och 1 eller 2 stoppbitar:

Steg 8: UART -överförda data är organiserade i paketbild

UART -överförda data är organiserade i paketbild
UART -överförda data är organiserade i paketbild

Steg 9:

START BIT

UART -dataöverföringsledningen hålls normalt på en hög spänningsnivå när den inte överför data. För att starta överföringen av data drar den sändande UART överföringsledningen från hög till låg under en klockcykel. När den mottagande UART detekterar hög- till lågspänningsövergången börjar den läsa bitarna i dataramen med frekvensen av överföringshastigheten.

DATARAM

Dataramen innehåller den faktiska data som överförs. Den kan vara 5 bitar upp till 8 bitar lång om en paritetsbit används. Om ingen paritetsbit används kan dataramen vara 9 bitar lång. I de flesta fall skickas data med den minst signifikanta biten först.

PARITET

Paritet beskriver jämnheten eller udden i ett tal. Paritetsbiten är ett sätt för den mottagande UART att berätta om någon data har ändrats under överföringen. Bits kan ändras genom elektromagnetisk strålning, felaktiga överföringshastigheter eller dataöverföringar över långa avstånd. Efter att den mottagande UART läser dataramen räknar den antalet bitar med värdet 1 och kontrollerar om totalen är ett jämnt eller udda tal. Om paritetsbiten är en 0 (jämn paritet), bör 1 bitarna i dataramen uppgå till ett jämnt tal. Om paritetsbiten är en 1 (udda paritet), bör 1 bitarna i dataramen uppgå till ett udda tal. När paritetsbiten matchar data vet UART att överföringen var fri från fel. Men om paritetsbiten är 0 och summan är udda; eller paritetsbiten är 1, och summan är jämn, UART vet att bitar i dataramen har ändrats.

STOPP BITS

o signalerar slutet av datapaketet, den sändande UART driver dataöverföringsledningen från en låg spänning till en hög spänning under minst två bitar.

Steg 10: STEG FÖR UART -TRANSMISSION

1. Den överförande UART tar emot data parallellt från databussen:

Steg 11: Bildöverföring av UART tar emot data parallellt från databussen

Bildöverföring av UART tar emot data parallellt från databussen
Bildöverföring av UART tar emot data parallellt från databussen

Steg 12: 2. Sändande UART lägger till startbiten, paritetsbiten och stoppbiten (erna) i dataramen:

2. den överförande UART lägger till startbiten, paritetsbiten och stoppbiten i dataramen
2. den överförande UART lägger till startbiten, paritetsbiten och stoppbiten i dataramen

Steg 13: 3. Hela paketet skickas seriellt från den överförande UART till den mottagande UART. den mottagande UART samplar datalinjen med den förkonfigurerade överföringshastigheten:

3. hela paketet skickas seriellt från den överförande UART till den mottagande UART. den mottagande UART samplar datalinjen med den förkonfigurerade överföringshastigheten
3. hela paketet skickas seriellt från den överförande UART till den mottagande UART. den mottagande UART samplar datalinjen med den förkonfigurerade överföringshastigheten

Steg 14: 4. mottagande UART kasserar startbiten, paritetsbiten och stoppbiten från dataramen:

4. den mottagande UART kasserar startbiten, paritetsbiten och stoppbiten från dataramen
4. den mottagande UART kasserar startbiten, paritetsbiten och stoppbiten från dataramen

Steg 15: 5. Mottagande UART konverterar seriell data tillbaka till parallell och överför den till databussen i mottagaränden:

5. mottagande UART konverterar seriell data tillbaka till parallell och överför den till databussen i mottagaränden
5. mottagande UART konverterar seriell data tillbaka till parallell och överför den till databussen i mottagaränden

Steg 16: FÖRDELAR OCH Nackdelar med UARTS

Inget kommunikationsprotokoll är perfekt, men UART är ganska bra på vad de gör. Här är några fördelar och nackdelar som hjälper dig att avgöra om de passar ditt projekts behov eller inte:

FÖRDELAR

Använder bara två ledningar Ingen klocksignal är nödvändig Har en paritetsbit för att möjliggöra felkontroll Datapaketets struktur kan ändras så länge som båda sidor är inställda för det Väl dokumenterad och mycket använd metod NADELAR

Dataramens storlek är begränsad till maximalt 9 bitar Stöder inte flera slav- eller flera master -system Baudhastigheterna för varje UART måste ligga inom 10% av varandra Fortsätt till del tre i denna serie, Grunderna i I2C Communication Protocol för att lära dig om ett annat sätt att elektroniska enheter kommunicerar. Eller om du inte redan har gjort det, kolla in del ett, Grunderna i SPI -kommunikationsprotokollet.

Och som alltid, meddela mig i kommentarerna om du har frågor eller något annat att tillägga! Om du gillade den här artikeln och vill se mer liknande den, var noga med att följa

Hälsningar

M. Junaid

Rekommenderad: