UART ist eine gängige serielle Kommunikationsmethode, die in vielen eingebetteten Systemen verwendet wird. Es sendet Daten bit für Bit ohne gemeinsame Taktleitung und verwendet abgestimmte Einstellungen, um die Synchronisation aufrechtzuerhalten. Zuverlässige UART-Verbindungen hängen von korrekter Verdrahtung, Baudrate, Frameformat, Spannungspegeln und Signalzeitpunkt ab. Dieser Artikel gibt Informationen über den Betrieb, die Einrichtung, die Verwendung und häufige Probleme der UART.

Universale asynchrone Empfänger-Sender (UART) Grundlagen
UART steht für Universal Asynchronous Receiver-Transmitter. Es handelt sich um eine serielle Kommunikationsschnittstelle, die Daten Bit für Bit zwischen verbundenen Geräten überträgt. Ein UART-Block ist in vielen Mikrocontrollern, Prozessoren, Kommunikationschips und eingebetteten Modulen integriert. Während der Übertragung wandelt es parallele Daten in einen seriellen Strom um und wandelt während des Empfangs eingehende serielle Daten wieder in Bytes um. UART verwendet keine gemeinsame Taktleitung. Stattdessen bleiben beide Geräte synchronisiert, indem sie passende Kommunikationseinstellungen verwenden und den Anfang und das Ende jedes Datenframes erkennen.
Gründe, warum UART weiterhin verbreitet ist
• Es werden nur wenige Signalleitungen verwendet
• Sie ist einfach für direkte Kommunikation einzurichten
• Es ist in vielen eingebetteten Geräten enthalten
• Es unterstützt lesbare Ausgaben über serielle Anschlüsse
Wie funktionieren UART-Rahmen und -Timing?
Teile eines UART-Rahmens

| Rahmenelement | Funktion |
|---|---|
| Startbit | Markiert den Beginn eines Rahmens |
| Datenbits | Tragen Sie den gesendeten Wert |
| Paritätsbit | Fügt bei Verwendung eine einfache Fehlerprüfung hinzu |
| Stopp bit | Markiert das Ende des Rahmens |
| Leerlaufzustand | Hält die Leitung hoch, wenn keine Daten gesendet werden |
Haupt-UART-Settings
| Schauplatz | Was es kontrolliert |
|---|---|
| Baudrate | Die Geschwindigkeit der Kommunikation |
| Datenbits | Die Anzahl der Wertbits in jedem Frame |
| Parität | Ob eine Paritätsprüfung hinzugefügt wird |
| Stopp-Stücke | Das Frame-Endformat |
| Durchflussregelung | Das Tempo der Daten zwischen verbundenen Geräten |
Baudrate bestimmt, wie schnell Bits gesendet werden. Höhere Baudraten erhöhen die Übertragungsgeschwindigkeit, erfordern aber genaueres Timing und einen saubereren Signalweg. Die UART-Kommunikation hängt außerdem davon ab, die Bildeinstellungen auf beiden Seiten abzustimmen.
Gemeinsame Baud-Raten
| Baudrate | Typische Verwendung |
|---|---|
| 9600 | Grundlegende Terminals, einfache Module und ältere Systeme |
| 19200–38400 | Mittelschnelle Kommunikation |
| 57600 | Schnellere Steuerungs- und Diagnoseverbindungen |
| 115200 | Konsolenausgabe und Debugging |
Rahmenlänge und Dateneffizienz
Die Bildlänge beeinflusst, wie viele nützliche Daten in jeder Übertragung übertragen werden. Zwei UART-Verbindungen können die gleiche Baudrate verwenden, liefern aber dennoch unterschiedliche effektive Datendurchsätze, wenn sich ihre Frameformate unterscheiden. Zum Beispiel verwenden 8N1 und 7E1 unterschiedlich viele Bits pro Frame, sodass die Menge an Nutzlastdaten pro Frame nicht gleich ist.
UART-Verkabelung, Spannungspegel und Durchflussregelung

Eine einfache UART-Verbindung verwendet drei Hauptsignale: TX, RX und GND. Der TX-Pin eines Geräts ist mit dem RX-Pin des anderen verbunden, und beide Geräte müssen denselben Masse teilen, damit die Signalpegel korrekt abgelesen werden können.
Viele Mikrocontroller und Module verwenden TTL- oder CMOS-UART-Pegel, oft mit 3,3 V oder 5 V. Ältere serielle Systeme verwenden möglicherweise RS-232, das einen anderen Spannungsbereich und eine andere Signalisierungsmethode hat und daher nicht direkt mit TTL UART kompatibel ist. Beim Anschließen dieser Standards wird ein pegelverschiebender Transceiver verwendet.
Einige UART-Verbindungen nutzen auch Flusskontrolle, um Datenverluste zu verhindern, wenn eine Seite eingehende Bytes nicht schnell genug aufnehmen kann.
Grundlegende UART-Verkabelungsregeln
• TX von einem Gerät verbindet sich mit RX auf dem anderen Gerät
• Die Übertragung von einem Gerät verbindet sich mit TX auf dem anderen Gerät
• Der Masse muss auf beiden Seiten verbunden sein
UART-Elektrostandards
| Typ | Typische Verwendung | Hauptpunkt |
|---|---|---|
| TTL/CMOS UART | Mikrocontroller, Module, Entwicklungsplatinen | Verwendet logische Pegelsignale wie 3,3 V oder 5 V |
| RS-232 | Legacy-Seriellanschlüsse, industrielle Verbindungen, PC-Seriellverbindungen | Verwendet einen anderen Spannungsbereich und ein anderes Signalverhalten |
Gängige Flusskontrollmethoden
• Hardware-Flusskontrolle verwendet RTS- und CTS-Leitungen
• Software-Flusssteuerung verwendet XON- und XOFF-Zeichen
Hardware-Flusskontrolle verwendet separate Steuerleitungen zur Verwaltung des Datenflusses. Software-Flusskontrolle reduziert die Anzahl der Drähte, verwendet aber Steuerzeichen im Datenstrom.
Wie funktioniert ein UART in einem Gerät?
Im Inneren eines Geräts umfasst ein UART-Peripheriegerät mehrere Teile, die das Senden und Empfangen von Daten abwickeln. Diese Teile umfassen oft einen Sendeabschnitt, einen Empfangsabschnitt, Schieberegister, Statusflags und FIFO-Puffer. Wenn Daten gesendet werden, legt die Software ein Byte in die UART, und die Hardware fügt das Startbit, das optionale Paritätsbit und das Stop-Bit hinzu, bevor das vollständige Bild durch die TX-Leitung gesendet wird.
Wenn Daten empfangen werden, beobachtet die UART die Rezeptleitung auf ein gültiges Startbit. Anschließend sampelt es das Signal zur richtigen Zeit, baut das Byte wieder auf, prüft das Frameformat und speichert die Daten, damit die Software sie später lesen kann.
UART-Peripheriegeräte melden ebenfalls Status- und Fehlerzustände, während FIFO-Puffer mehrere Bytes speichern, um verpasste Daten zu reduzieren, wenn Software nicht sofort reagiert.
Häufiger UART-Status und Fehlermeldungen
• Sendepuffer leer
• Voller Empfangspuffer
• Paritätsfehler
• Rahmenfehler
• Überlauffehler
Häufige UART-Anwendungen in Embedded Systems
• Serielles Terminal-Debugging
• Kommunikation zwischen einem Mikrocontroller und einem Modul
• Bootloader- und Firmware-Update-Links
• Einfache Befehls-und-Antwort-Schnittstellen
• Datenerfassung und Diagnostik
• Zugriff auf eingebettete Platinenkonsolen
UART-Einrichtung, Testen und Fehlerbehebung
Das Einrichten einer UART-Verbindung beginnt mit der Auswahl kompatibler Kommunikationseinstellungen und Signalpegel. Tests helfen zu bestätigen, dass die Verbindung korrekt verdrahtet, korrekt konfiguriert und gültige Datenframes gesendet werden.
Linkplanung und Gerätekonfiguration
Wählen Sie vor der Verbindung die Baudrate, das Bildformat, den Spannungsstandard und die Flussregelungsmethode. Dann aktivieren Sie die UART-Hardware in der Software und konfigurieren Sie alle benötigten Puffer oder FIFO-Einstellungen. Taktgenauigkeit, Kabelqualität und erwartete Datenrate beeinflussen ebenfalls die Verbindungsleistung.
Kommunikationsvalidierung
Überprüfen Sie den Link, indem Sie ein bekanntes Datenmuster oder lesbaren Text senden. Ein serielles Terminal, ein USB-zu-UART-Adapter, ein Logikanalysator oder ein Oszilloskop kann helfen, zu bestätigen, dass die Frames gültig sind und die Leitung zwischen den Übertragungen im korrekten Leerlaufzustand bleibt.
UART-Problemleitfaden
| Symptom | Wahrscheinliche Ursache |
|---|---|
| Zufällige oder unleserliche Zeichen | Falsche Baudrate oder Frameeinstellungen |
| Keine Daten empfangen | TX/RX umgekehrt, fehlende Masse, UART deaktiviert, falscher Spannungspegel |
| Intermittierende Fehler | Rauschen, lange Verkabelung, Zeitmessunstimmigkeit |
| Rahmen- oder Paritätsfehler | Schlechte Einstellungen oder schlechte Signalqualität |
| Verlorene Bytes während Bursts | Überlastung, schwaches Puffern, keine Durchflusskontrolle |
Fehlerbehebungsprüfungen
• Bestätigen, dass TX und RX korrekt gekreuzt werden
• Sicherzustellen, dass beide Seiten denselben Boden teilen
• Überprüfen Sie Baudrate und Bildformat an beiden Enden
• Überprüfen, ob die Signalpegel TTL/CMOS oder RS-232 sind
• Reduziere die Baudrate, wenn ein Zeitfehler oder Rauschen vermutet wird
• Die UART-Fehlermeldungen in der Software zu überprüfen
• Testen mit bekannten Terminalwerkzeugen oder -adaptern
UART, SPI und I2C im Vergleich

UART, SPI und I2C sind gängige serielle Kommunikationsmethoden, funktionieren jedoch unterschiedlich. UART verwendet eine direkte Verbindung zwischen zwei Geräten und benötigt keine Taktleitung. SPI verwendet einen Takt und separate Datenpfade für eine schnellere Kommunikation. I2C verwendet ebenfalls einen Takt, aber er ermöglicht es mehreren Geräten, denselben Bus über integrierte Adressierung zu teilen.
Schnittstellenvergleich
| Funktion | UART | SPI | I2C |
|---|---|---|---|
| Uhrenlinie | Nein | Ja | Ja |
| Typische Topologie | Punkt-zu-Punkt | Controller-Peripherie | Gemeinsamer Bus |
| Komplexität | Low | Moderat | Moderat |
| Eingebaute Adressierung | Nein | Nein | Ja |
| Gemeinsame Stärke | Einfachheit | Geschwindigkeit | Weniger Kabel für viele Geräte |
UART eignet sich für einfache, direkte Verbindungen und Terminalzugriffe. SPI eignet sich für schnellere Kommunikation. I2C eignet sich für Fälle, in denen mehrere Geräte einen Bus mit weniger Signalleitungen teilen.
Fazit
UART wird weiterhin verwendet, weil es einfache, direkte Kommunikation mit geringer Hardwarekomplexität bietet. Die Leistung hängt von abgestimmten Einstellungen, korrekter TX- und RX-Verkabelung, gemeinsamer Masse, kompatiblen Spannungspegeln sowie der korrekten Behandlung von Timing-, Puffer- und Fehler-Flags ab. Das Verständnis von Framestruktur, Baudrate, Flusskontrolle und häufigen Fehlerursachen hilft zu erklären, warum UART-Verbindungen ausfallen und wie stabile Kommunikation in eingebetteten Systemen aufrechterhalten wird.
Häufig gestellte Fragen [FAQ]
Kann ein UART gleichzeitig senden und empfangen?
Ja. UART unterstützt Vollduplex-Kommunikation, sodass es Daten auf TX senden und gleichzeitig auf RX empfangen kann.
Was bedeutet 8N1 in UART?
8N1 bedeutet 8 Datenbits, keine Parität und 1 Stoppbit.
Kann ein UART mit mehreren Geräten verbunden werden?
Nicht direkt. UART ist hauptsächlich für die Eins-zu-eins-Kommunikation gedacht und beinhaltet keine integrierte Adressierung.
Ist die Baudrate in UART identisch mit der Bitrate?
Im Standard-UART, ja. Sie werden als gleich behandelt, da jedes Symbol ein Bit trägt.
Warum einen USB-zu-UART-Adapter verwenden?
Es ermöglicht einem Computer, über USB mit einer UART-Schnittstelle zu kommunizieren.
Beinhaltet UART Verschlüsselung oder fortschrittliche Fehlerkorrektur?
Nein. UART enthält keine Verschlüsselung oder fortschrittliche Fehlerkorrektur für sich allein.