Hallo,
vom Prinzip könnte man es so auffassen:
Der Header könnte so aussehen:
Delphi-Quellcode:
header = record
STX : Byte; // ansiChar
IdTo: Byte;
IdFrom: Byte;
Lng: Byte;
end;
data ist dann ein byteArray ( Array of Byte, Größe Lng-1)
trailer: Byte;
Beim Empfangen wertestDu erst den Header aus.
Abhängig von der Anzahl der Datenbytes (header.Lng -1)
werden die Daten gelesen.
Anschliessend wird der Trailer gelesen.
Aus den empfangenen Daten wird ein neuer LRC gebildet.
Dieser LRC wird mit dem empfangenen verglichen.
Stimmen sie überein sind die Daten ok.
Grüße
Klaus