Paketaufbau RS232

Aus iSysBus Doku

(Weitergeleitet von Protokoll:Paketaufbau RS232)
Wechseln zu: Navigation, Suche

Protokoll / ISB-Protokoll / Paketaufbau RS232

iSysBus Protokollschichten

Anwendung Bootloader Config-Dienst Input-Dienst Output-Dienst ...
Nachrichtentyp Unicast Multicast Broadcast
Transport ISB-Protokoll
Bussystem CAN USB RS232 RS485 ...

Diese Seite beschreibt den Aufbau der Datenpakete bei Verwendung von RS232

Wichtig: Übertragen werden die niedrigstwertigen Bytes zuerst übertragen (LSB first)!

Inhaltsverzeichnis

Prinzipieller Paketaufbau

Startbyte Flags Destination-ID Source-ID Daten <reserviert> CRC Stopbyte
1 Byte 1 Byte 2 Bytes 2 Bytes 0-8 Byte 1 Byte 1 Byte 1 Byte

Im Feld 'Flags' wird zwischen verschiedenen Nachrichtentypen (Type of Frame) unterschieden, die weiter unten beschrieben werden. Der Aufbau der folgenden Felder ist jedoch bei allen Typen gleich:

Startbyte

Es kennzeichnet den Beginn einer Nachricht und besteht aus dem SOH(Start of Heading)-Zeichen. In hexadezimaler Schreibweise lautet es 0x01, in binärer 0b00000001.

Flags

Das Byte für die Flags wird aufgeteilt in ein Feld für eventuelle Erweiterungen (2 Bits), den Typ of Frame (TOF, 2 Bits) sowie dem Data Length Counter (DLC, 4 Bits). Dieser enthält Informationen, wie viel Datenbytes gesendet werden, dabei sind allerdings nur Werte von 0-8 zulässig, da pro Paket maximal 8 Bytes an Daten transportiert werden können.

Source-ID

Das Source-ID-Feld beinhaltet die Adresse des Knotens (11 Bit), von dem eine Nachricht gesendet wird. Die restlichen 5 Bits bleiben ungenutzt.

Daten

Dieses Feld enthält die Nutzdaten (die auch entfallen können) und darf maximal 8 Byte lang sein. Dabei werden die Daten mit dem LSB zuerst übertragen, ausserdem müssen immer ganze Bytes übertragen werden. Wie viele Daten ein Paket enthält wird im Feld DLC festgelegt.

CRC

Über alle Felder bis auf Start/Stopbyte sowie CRC selbst wird eine CRC erzeugt, um fehlerhafte Datenpakete erkennen zu können. Diese ist ein Byte lang.

Stopbyte

Das Stopbyte kennzeichnet das Ende einer Nachricht und besteht aus dem CR(Carriage Return)-Zeichen. In hexadezimaler Schreibweise lautet es 0x0D, in binärer 0b0000 1101

Unicast

Startbyte Flags Destination-ID Source-ID Daten Prüfsumme Stopbyte
SOH --- RTR TOF DLC Port Zieladresse --- Absenderadresse Daten Checksumme CR
0x01 1 Bit 1 Bit 00 4 Bits 5 Bits 11 Bits 5 Bits 11 Bits 0-8 Byte 16 Bits 0x0D


Destination

Beim Unicast beschreibt das Destination-Feld die Adresse eines Knotens (11 Bit), der erreicht werden soll.


Port

Der Port unterscheidet beim Empfänger verschiedene Dienste, z.B. den Config-Dienst etc.

Multicast

Startbyte Flags Destination-ID Source-ID Daten Prüfsumme Stopbyte
SOH --- RTR TOF DLC Multicast-ID --- Absenderadresse Daten Checksumme CR
0x01 1 Bit 1 Bit 10 4 Bits 16 Bits 5 Bits 11 Bits 0-8 Byte 16 Bits 0x0D


Destination

Beim Multicast beschreibt das Destination-Feld die Multicast-Adresse einer Gruppe(11 Bit). Die restlichen 5 Bits bleiben ungenutzt.

Meine Werkzeuge