Christian Kruse: Array an RS232 senden

Beitrag lesen

你好 Lars,

Ich will ein Array über die serielle Schnittstelle ausgeben. Das Array
ist gefüllt mit Zahlen. Wie muss ich vorgehen um dieses zu senden? Es
sollen effektiv diese Werte gesendet werden.

Da wirst du dir ein Protokoll ausdenken müssen. Was ist denn die
Gegenseite für ein Gerät? Frei programmierbar? Dann würde ich es in etwa
so machen:

1. Byte: Kennung, dass jetzt ein Array von Zahlen-Werten kommt
folgende 4 Bytes: Anzahl Elemente

Danach für jedes Element 4 Byte. Das reicht, um den 32-Bit-Zahlenraum
abzudecken. In welcher Repräsentation (Little- oder Big-Endian, signed
oder unsigned, etc, pp) du die Daten senden willst, musst du jetzt selber
entscheiden, für diese Entscheidung ist zu wenig Information vorhanden.

Eventuell kann man beim 1. Byte auch noch ein wenig sparen und da nur ein
halbes Byte oder auch nur 2 Bit nehmen, hängt davon ab, wieviele
Datentypen du hast. Dadurch steigt aber auch der Implementations-Aufwand.
Musst du halt sehen, wie es am besten passt.

再见,
 克里斯蒂安

P.S.: Byte ist hier synonym verwendet mit Oktett.