Herakles
Profifragensteller
Moin!
Wenn RS232-Datenkommunikation zwischen zwei Teilnehmern vonstatten gehen muss, bevorzuge ich ein Protokoll, das nicht auf ASCII-Zeichen beruht, sondern Werte als Bytes überträgt. Die Schnittstelle bietet sich ja leider geradezu dafür an, ASCII-Zeichen zu nutzen, weil man sie dann schön mit anderen Meldungen über ein serielles Leseprogramm (bspw. minicom) ohne Hindernisse als Mensch lesen und verstehen kann.
Ich hoffe, das ist so "verständlich" erklärt. Beim ASCII-Versenden würde eine 100 als "0x31 0x30 0x30" versendet, beim Byte-Übertragen wäre das ein "0x64".
Ein offensichtlicher Nachteil dabei ist für mich der Aufwand der Daten, sprich: bei einer bspw. "100" werden drei Bytes versendet, beim Byte-Übertragen wird ein Byte verschickt. Weiterer Nachteil meines Erachtens ist die Implementierung einer Prüfsumme, die in der Implementierung bei "reinen Bytes" einfacher sein sollte, denn auf jeder Seite der Kommunikation müssten zuerst die ASCII-Daten zu Zahlen zu konvertiert werden um diese dann aufzurechnen.
Kurz gesagt: Mich würde interessieren, wie Ihr derartige Herausforderungen löst und wo Eure Präferenzen liegen, wenn ein Protokoll über RS-232 Daten austauschen soll.
Ich bin gespannt.
Grüße
Herakles
Wenn RS232-Datenkommunikation zwischen zwei Teilnehmern vonstatten gehen muss, bevorzuge ich ein Protokoll, das nicht auf ASCII-Zeichen beruht, sondern Werte als Bytes überträgt. Die Schnittstelle bietet sich ja leider geradezu dafür an, ASCII-Zeichen zu nutzen, weil man sie dann schön mit anderen Meldungen über ein serielles Leseprogramm (bspw. minicom) ohne Hindernisse als Mensch lesen und verstehen kann.
Ich hoffe, das ist so "verständlich" erklärt. Beim ASCII-Versenden würde eine 100 als "0x31 0x30 0x30" versendet, beim Byte-Übertragen wäre das ein "0x64".
Ein offensichtlicher Nachteil dabei ist für mich der Aufwand der Daten, sprich: bei einer bspw. "100" werden drei Bytes versendet, beim Byte-Übertragen wird ein Byte verschickt. Weiterer Nachteil meines Erachtens ist die Implementierung einer Prüfsumme, die in der Implementierung bei "reinen Bytes" einfacher sein sollte, denn auf jeder Seite der Kommunikation müssten zuerst die ASCII-Daten zu Zahlen zu konvertiert werden um diese dann aufzurechnen.
Kurz gesagt: Mich würde interessieren, wie Ihr derartige Herausforderungen löst und wo Eure Präferenzen liegen, wenn ein Protokoll über RS-232 Daten austauschen soll.
Ich bin gespannt.
Grüße
Herakles