UART je běžná metoda sériové komunikace používaná v mnoha vestavěných systémech. Odesílá data jeden bit po druhém bez sdílené hodinové linky, přičemž používá srovnatelná nastavení pro zachování synchronizace. Spolehlivé UART linky závisí na správném zapojení, rychlosti přenosu, formátu snímku, úrovních napětí a časování signálu. Tento článek poskytuje informace o provozu, nastavení, využití a běžných problémech UART.

Základy univerzálního asynchronního přijímače-vysílače (UART)
UART znamená Universal Asynchronous Receiver-Transmitter (univerzální asynchronní přijímač-vysílač). Jedná se o sériové komunikační rozhraní, které přenáší data jeden bit po jednom mezi připojenými zařízeními. UART blok je zabudován do mnoha mikrokontrolérů, procesorů, komunikačních čipů a vestavěných modulů. Při přenosu převádí paralelní data na sériový proud a při příjmu převádí příchozí sériová data zpět na bajty. UART nepoužívá sdílenou hodinovou linku. Místo toho zůstávají obě zařízení synchronizovaná pomocí odpovídajících komunikačních nastavení a detekcí začátku a konce každého datového rámce.
Důvody, proč je UART stále běžný
• Používá pouze několik signálních linek
• Je snadné nastavit přímou komunikaci
• Je součástí mnoha vestavěných zařízení
• Podporuje čitelný výstup přes sériové terminály
Jak fungují rámy a časování UART?
Části rámu UART

| Prvek rámce | Funkce |
|---|---|
| Startovací bit | Označuje začátek rámce |
| Datové bity | Nesete hodnotu, která je posílana |
| Paritní bit | Při použití přidává základní kontrolu chyb |
| Stop bit | Označuje konec snímku |
| Nečinný stav | Udržuje linku vysokou, když nejsou odesílána žádná data |
Hlavní nastavení UART
| Prostředí | Co ovládá |
|---|---|
| Rychlost přenosu | Rychlost komunikace |
| Datové bity | Počet hodnotových bitů v každém snímku |
| Parita | Zda je přidána kontrola parity |
| Stop bity | Formát končící snímku |
| Řízení toku | Tempo dat mezi připojenými zařízeními |
Rychlost přenosu určuje, jak rychle jsou bity posílány. Vyšší přenosové rychlosti zvyšují přenosovou rychlost, ale vyžadují přesnější časování a čistší signálovou cestu. Komunikace UART také závisí na shodě nastavení snímků na obou stranách.
Běžné rychlosti přenosu
| Rychlost přenosu | Typické použití |
|---|---|
| 9600 | Základní terminály, jednoduché moduly a starší systémy |
| 19200–38400 | Komunikace střední rychlosti |
| 57600 | Rychlejší řídicí a diagnostické odkazy |
| 115200 | Výstup z konzole a ladění |
Délka snímku a efektivita dat
Délka snímku ovlivňuje, kolik užitečných dat je přenášeno v každém přenosu. Dva UART spoje mohou používat stejnou rychlost přenosu, ale přesto poskytovat odlišnou efektivní propustnost dat, pokud se jejich formáty snímků liší. Například 8N1 a 7E1 používají různé počty celkových bitů na snímk, takže množství dat o užitečném zatížení na snímek není stejné.
Zapojení UART, úrovně napětí a řízení průtoku

Základní UART spojení využívá tři hlavní signály: TX, RX a GND. TX pin jednoho zařízení je připojen k RX pinu druhého a obě zařízení musí sdílet stejnou zem, aby byly úrovně signálu správně čteny.
Mnoho mikrokontrolérů a modulů používá TTL nebo CMOS úrovně UART, často na 3,3 V nebo 5 V. Starší sériové systémy mohou používat RS-232, který má jiný rozsah napětí a způsob signalizace, takže není přímo kompatibilní s TTL UART. Při propojení těchto standardů se používá transceiver s posouváním úrovně.
Některé UART spoje také používají řízení toku, aby zabránily ztrátě dat, když jedna strana nemůže přijímat příchozí bajty dostatečně rychle.
Základní pravidla zapojení UART
• Příjem z jednoho zařízení se připojí k RX na druhém zařízení
• Příjem z jednoho zařízení se připojuje k TX na druhém zařízení
• Zem musí být připojena na obou stranách
Elektrické normy UART
| Typ | Typické použití | Hlavní bod |
|---|---|---|
| TTL/CMOS UART | Mikrokontroléry, moduly, vývojové desky | Používá logické signály jako 3,3 V nebo 5 V |
| RS-232 | Starší sériové porty, průmyslové linky, sériová připojení PC | Používá jiný rozsah napětí a chování signálu |
Běžné metody řízení průtoku
• Hardwarové řízení toku využívá RTS a CTS linky
• Softwarové řízení toku používá znaky XON a XOFF
Hardwarové řízení toku využívá samostatné řídicí linky pro správu datového toku. Softwarové řízení toku snižuje počet vodičů, ale využívá řídicí znaky uvnitř datového toku.
Jak UART funguje uvnitř zařízení?
Uvnitř zařízení periferie UART obsahuje několik částí, které zajišťují odesílání a příjem dat. Tyto části často zahrnují vysílací sekci, přijímací sekci, posuvné registry, stavové příznaky a FIFO buffery. Když jsou data odeslána, software vloží bajt do UARTu a hardware přidá startovací bit, volitelný paritní bit a stop bit před odesláním celého snímku přes linku TX.
Když jsou data přijata, UART sleduje RX řádek pro platný startovací bit. Poté vzorkuje signál ve správný čas, znovu sestaví bajt, zkontroluje formát rámce a uloží data, aby je software mohl později přečíst.
UART periferie také hlásí stav a chybové stavy, zatímco FIFO buffery uchovávají několik bajtů, aby snížily počet přehlédnutých dat, když software nereaguje okamžitě.
Běžné příznaky stavu a chyb UART
• Vysílací buffer je prázdný
• Přijímací buffer plný
• Paritní chyba
• Chyba rámování
• Chyba překročení
Běžné použití UART ve vestavěných systémech
• Ladění sériového terminálu
• Komunikace mezi mikrokontrolérem a modulem
• Odkazy na aktualizaci bootloaderu a firmwaru
• Jednoduchá rozhraní příkazů a reakce
• Záznam dat a diagnostika
• Přístup ke konzoli přes vestavěnou desku
Nastavení, testování a řešení problémů UART
Nastavení UART spojení začíná výběrem kompatibilních komunikačních nastavení a úrovní signálu. Testování pomáhá potvrdit, že je spojení správně zapojené, správně nakonfigurované a posílá platné datové rámce.
Plánování spojení a konfigurace zařízení
Před připojením zvolte rychlost přenosu, formát snímku, standard napětí a způsob řízení průtoku. Poté softwarově povolte hardware UART a nakonfigurujte potřebné buffery nebo FIFO nastavení. Přesnost hodin, kvalita kabelů a očekávaná datová rychlost také ovlivňují výkon linku.
Ověřování komunikace
Zkontrolujte odkaz odesláním známého datového vzoru nebo čitelného textu. Sériový terminál, adaptér USB-na-UART, logický analyzátor nebo osciloskop mohou pomoci potvrdit, že snímky jsou platné a že linka zůstává mezi přenosy ve správném nečinném stavu.
Průvodce problémem UART
| Symptom | Pravděpodobná příčina |
|---|---|
| Náhodné nebo nečitelné znaky | Špatná rychlost přenosu nebo nastavení snímků |
| Žádná data přijata | TX/RX obráceně, chybějící zem, deaktivovaný UART, špatná úroveň napětí |
| Přerušované chyby | Hluk, dlouhé zapojení, nesoulad v časování |
| Chyby rámování nebo parity | Špatná nastavení nebo špatná kvalita signálu |
| Ztracené bajty během burstů | Přetížení, slabé bufferování, žádná kontrola toku |
Kontroly řešení problémů
• Potvrdit, že TX a RX jsou správně kříženy
• Zajistit, aby obě strany sdílely stejný prostor
• Ověření rychlosti přenosu a formátu snímků na obou koncích
• Kontrolovat, zda jsou úrovně signálu TTL/CMOS nebo RS-232
• Snížit rychlost přenosu, pokud je podezření na chybu v načasování nebo šum
• Zkontrolujte chybové příznaky UART v softwaru
• Testování s osvědčenými terminálovými nástroji nebo adaptéry
Srovnání UART, SPI a I2C

UART, SPI a I2C jsou běžné metody sériové komunikace, ale fungují různými způsoby. UART používá přímé spojení mezi dvěma zařízeními a nepotřebuje hodinovou linku. SPI používá hodiny a samostatné datové cesty pro rychlejší komunikaci. I2C také používá hodiny, ale umožňuje více zařízením sdílet stejnou sběrnici díky vestavěnému adresování.
Srovnání rozhraní
| Funkce | UART | SPI | I2C |
|---|---|---|---|
| Hodinová čára | Ne | Ano | Ano |
| Typická topologie | Point-to-point | Controller-periferní zařízení | Sdílená sběrnice |
| Složitost | Nízké | Střední | Střední |
| Vestavěné adresování | Ne | Ne | Ano |
| Běžná síla | Jednoduchost | Rychlost | Méně vodičů pro mnoho zařízení |
UART vyhovuje jednoduchým, přímým propojením a přístupu k terminálům. SPI je vhodný pro rychlejší komunikaci. I2C vyhovuje případům, kdy několik zařízení sdílí jednu sběrnici s menším počtem signálových linek.
Závěr
UART se stále používá, protože nabízí jednoduchou, přímou komunikaci s nízkou hardwarovou složitostí. Jeho výkon závisí na sladěných nastaveních, správném zapojení TX a RX, sdílené zemi, kompatibilních úrovních napětí a správném zacházení s časováním, bufferováním a chybovými příznaky. Porozumění struktuře rámce, rychlosti přenosu, řízení toku a běžným příčinám poruch pomáhá vysvětlit, proč UART spojení selhávají a jak je v vestavěných systémech udržována stabilní komunikace.
Často kladené otázky [FAQ]
Může UART odesílat a přijímat současně?
Ano. UART podporuje plně duplexní komunikaci, takže může současně odesílat data na TX a zároveň přijímat na RX.
Co znamená 8N1 na UART?
8N1 znamená 8 datových bitů, žádnou paritu a 1 stop bit.
Může se UART připojit k více zařízením?
Ne přímo. UART je určen především pro komunikaci jeden na jednoho a nezahrnuje vestavěné adresování.
Je rychlost přenosu totožná s datovou rychlostí v UART?
Ve standardním UART ano. Jsou považovány za totéž, protože každý symbol nese jeden bit.
Proč používat adaptér z USB na UART?
Umožňuje počítači komunikovat s rozhraním UART přes USB.
Zahrnuje UART šifrování nebo pokročilou korekci chyb?
Ne. UART sám o sobě neobsahuje šifrování ani pokročilou korekci chyb.