Hallo Leute,
ich empfange Daten über die RS232 Schnittstelle. An die Nutzdaten habe
ich eine CRC16 Checksumme drangehängt (2Bytes).
Von der Checksumme wird zuerst das Low Byte und anschließend das High
Byte übertragen.
Ich habe eine For-Schleife. Diese For-Schleife liest das 1.Byte aus dem
RS232-Buffer aus und soll dieses Byte im unsigned short crc16_checksum
speichern.
Die habe ich wie folgt gelöst:
1 | received_checksum = ((unsigned short) rs232_data);
|
Jedoch beim 2. Schleifendurchlauf lese ich das High Byte aus dem RS232
Buffer aus. Nun kann ich ja nicht die gleiche Anweisung wie oben nehmen.
Ich könnte in der For-Schleife eine Fallunterscheidung vornehmen dies
benötigt aber wieder zusätzlich Laufzeit.
Gibt es denn auch eine elegenate Lösung um dann das High Byte in den
Datentype short zu schreiben?