Forum: Mikrocontroller und Digitale Elektronik UART Protokoll Verständnis


von JayJay1234 (Gast)


Lesenswert?

Hallo Community,

ich bin Anfänger bzw. Fachfremd auf dem Gebiet der seriellen 
Schnittstellen.
Für ein Projekt soll ich eine UART-Kommunikation zwischen 
Microcontroller und PC initialisieren.

Das Vorgehen hierbei ist mir relativ klar, jedoch bin ich nun über das 
UART-Protokoll gestolpert.

Nach meinem Wissen ist das UART Protokoll standardmäßig folgendermaßen 
aufgebaut:

1 Startbit|8 Datenbits|Paritätsbit (optional)|1 Stopbit

In meinem Projekt ist das Protokoll aber folgendermaßen definiert:

1 Tel. Length Byte | 1 Acknowledge Byte | 4 Datenbytes | 2 CRC Bytes

Mir erschließt sich hier der logische Zusammenhang nicht. Wie ist dieses 
Protokoll zu verstehen? Ist dies überhaupt UART? Falls ja, gibt es 
verschiedene UART Protokolle?
Warum werden hier Datenbytes und nicht Datenbits aufgeführt? Mir fehlen 
hier auch Start-/Stopbit.

Mir fehlt hier das Verständnis und war bisher auch bei meiner 
Online-Recherche erfolglos, daher hoffe ich, dass mir hier jemand 
weiterhelfen kann....

Vielen Dank im Voraus.

Grüße
JayJay

von Dr. Sommer (Gast)


Lesenswert?

JayJay1234 schrieb:
> Mir erschließt sich hier der logische Zusammenhang nicht. Wie ist dieses
> Protokoll zu verstehen? Ist dies überhaupt UART? Falls ja, gibt es
> verschiedene UART Protokolle?

Jedes der Bytes in dieser Protokolldefinition ist so aufgebaut, wie 
darüber beschrieben. Jedes Byte hat Startbit, 8 Datenbits, Stopbits. Wie 
viele Stop-Bits und ob und welches Paritäts-Bit vorhanden sind, muss 
auch definiert sein.

von Dietrich L. (dietrichl)


Lesenswert?

JayJay1234 schrieb:
> Nach meinem Wissen ist das UART Protokoll standardmäßig folgendermaßen
> aufgebaut:
>
> 1 Startbit|8 Datenbits|Paritätsbit (optional)|1 Stopbit

Das ist die "Verpackung" (Kodierung) eines Bytes

> In meinem Projekt ist das Protokoll aber folgendermaßen definiert:
>
> 1 Tel. Length Byte | 1 Acknowledge Byte | 4 Datenbytes | 2 CRC Bytes

Das sind die Bytes, die alle wie oben "verpackt" werden.

von Dumdidum la la la (Gast)


Lesenswert?

Es handelt sich um eine hierarchische Darstellung.

1. Die Beschreibung mit Start-Bit, Datenbits, etc. bezieht sich auf die 
Übertragung eines einzelnen Datenwortes - was eben auch ein Byte lang 
sein kann.

Da gibt es auch mehr Varianten mit weniger als 8 Datenbits, 1,5 Stopbits 
usw.

2. Das zweite "Protokoll" setzt das erste voraus. D.h. es wird davon 
ausgegangen, dass jedes Element dieses Protokolls, ein nach dem ersten 
Protokoll übertragenes Datenwort ist.


Das ist so ähnlich wie beim Hausbau. Man beschreibt zunächst einen 
Ziegel mit Länge, Breite, Höhe und Material. Dann beschreibt man die 
Wände und setzt voraus, dass die Wände wiederum aus einzelnen Ziegeln 
zusammengesetzt ist - ohne das man bei der Beschreibung der Wand jeden 
einzelnen Ziegel beschreibt.

von Mike R. (thesealion)


Lesenswert?

Im Prinzip solltest du dir mal das OSI-Modell ansehen.
Ist zwar hier nicht ganz passend, aber im Grundsatz das gleiche.

Das Usart Protokoll ist die Bit Übertragungsschicht die vorgibt, wie 
jedes einzelne Bit (bzw. eine 8ter Gruppe von Bits) übertragen wird.

Dein Projekt Protokoll ist dann in den darüber liegenden Schichten 
angesiedelt.

Da die Hardware wahrscheinlich schon die Übertragung übernimmt, wirst du 
die Start-, Stop- und Paritätsbit nie direkt zu Gesicht bekommen.

von jayjay1234 (Gast)


Lesenswert?

Vielen Dank für das schnelle Feedback und die einleuchtenden Antworten.
Jetzt ist mir das Gantze klarer geworden. Danke für eure Hilfe!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.