Последовательная связь Windows, бит контроля четности

Я кодирую с последовательной связью в Windows.
В этом сообщении, чтобы программа распознала начало сообщения, я должен использовать бит четности.

Это означает, что если байт, полученный с установкой бита четности, является отправной точкой сообщения.

Например, если вы получаете байты, как показано ниже, от последовательного порта
([byte] означает полученный байт и [byte]p означает байт с установкой бита четности)

Последовательный порт <-[байт]<- [байт]<- [байт]<- [байт]<- [байт] р<- [байт]: получены байты последовательности

Я должен проанализировать выше сообщения после сброса 4 байтов перед байтом с установкой бита четности.

В случае Linux бит настройки четности представляется как 0XFF 0x00 так что если я получу 1 байт 0xEE с четностью.
Обозначается как 0xFF 0x00 0xEE, так что я могу выбрать начальную точку.

Но в окнах бит четности представляется как событие EV_ERR от WaitCommEvent()
И читать данные отдельно ReadFile(),

Я думаю, что трудно определить, где произошла ошибка четности, чтобы отличить начальную точку сообщения.

Есть ли способ решить эту проблему, на самом деле, так как я новичок в программировании Windows, я думаю, что должен существовать другой путь, верно?

1

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]