2016-07-29 101 views
0

Ich möchte Daten über serielle senden, mein Format ist Start_flag, Länge, Daten, CheckSum so seine 0xAA, 0x05, M, T, O, N, 0x78 Auf dem Empfänger, nachdem es Startflag bekommt dann 5 (len) Daten. Ich möchte bestätigen, ob die empfangene Länge korrekt ist oder nicht? dann gehe ich auf Datenempfang. Denn wenn ich als Länge 4 bekomme, erzeugt es Error. Kann jemand mir helfen, bitte .....Wie überprüfe ich, ob die Empfangslänge des seriellen Datenpakets korrekt ist oder nicht?

+0

Sie müssen davon ausgehen, dass es korrekt ist. Wenn nicht, werden Sie das erst später herausfinden. Entweder wegen eines Timeouts (zu groß) oder weil die Prüfsumme nicht passt (zu klein). –

+0

danke für deine zeit – Siva

Antwort

0

simlply create state machine to handle und count die eingehenden Bytes. berücksichtigen beschädigtes Längenbyte. Darüber hinaus setzen Sie den Zustandsautomaten im Falle eines Timeouts zurück.

+0

danke für deine zeit – Siva