Идентификация пакетов в байтовом потоке
У меня возникли проблемы с подключением к датчику акселерометра. Датчик выдает около 8000 показаний в секунду непрерывно. Датчик подключен к USB-порту с рекламой и отображается как com4. Моя проблема в том, что я могуКажется, что он выбирает пакеты считывания датчика из потока байтов. Пакеты имеют размер пять байтов и имеют следующий формат:
High nibble Low nibble
Byte 1 checksum, id for packet start X high
Byte 2 X mid X low
Byte 3 Y high Y mid
Byte 4 Y low Z high
Byte 5 Y mid Y low
X, y, z - ускорение.
В документации к датчику говорится, что старшим байтом в первом байте является контрольная сумма (вычисленная Xhigh + Xlow + Yhigh + Ylow + Zhigh + Zlow), но также и идентификация начала пакета. Я'Я довольно новичок в программировании на внешние устройства и могудействительно не понимаю, как контрольную сумму можно использовать в качестве идентификатора для начала пакета (не будетt контрольная сумма все время меняется?). Это распространенный способ определения начала пакета? У кого-нибудь есть идеи, как решить эту проблему?
Любая помощь будет принята с благодарностью.