Тема: RS232: вопрос по обработке сообщений
Задача такая: некое устройство (навигатор) шлет пакеты по RS232 (длина пакета = 36 байт), нужно выдернуть интересующие слова (4 байта) из этого пакета (всегда на фиксированных позициях) и отправить по CAN.
Вопрос: как лучше сделать?
Сработает тупой вариант (проверяем длину принятых данных, если больше N => берем нужное нам и шлем в CAN) или потребуется что-то сложнее (ждать признак "начало пакета", потом отсчитывать N байт и т.п.)
И вопрос: когда очищается буфер приема UART? Пример: в порт приходит "АБВГД"...пауза... "ЕЖЗИК". Это все ляжет в D0..9? или D0..4 ?? Или вообще будет десять раз по D0 ??
Спасибо!
PS: что за данные приходят и что нужно передавать в CAN - на картинке.