Пятница, 29 Март 2024

Протокол VPW и PWM


При обмене данными по данным протоколам происходит буферизация лишь одного кадра данных, что означает необходимость конкретизации подлежащего захвату или возврату кадра. В некоторых (редких) случаях бортовой процессор может передавать пакеты, состоящие более чем из одного кадра. В такой ситуации запрос должен повторяться до тех пор, пока все кадры пакета не будут приняты.

Запрос всегда формируется следующим образом: контрольный байт, запрос по стандарту SAE, номер кадра. Как уже упоминалось выше, контрольный байт обычно представляет собой число, равное полному количеству следующих за ним байтов. Запрос оформляется в соответствии со Спецификациями SAE J1950 и J1979 и состоит из заголовка (3 байта), последовательности информационных байтов и байта контроля ошибки (CRC). Заметим, что в то время как информация по запросу формируется в строгом соответствии со Спецификациями SAE, потребителем контрольного байта и номера кадра является интерфейсный чип.

При успешном завершении процедуры ответное сообщение всегда имеет следующий формат: контрольный байт], ответ по стандарту SAE. Контрольный байт, как и ранее, определяет количество следующих за ним информационных байтов. Ответ в соответствии с требованиями стандарта SAE состоит из заголовка (3 байта), цепочки информационных байтов и байта CRC.

При сбое высылается 2-байтное ответное сообщение: контрольный байт, байт состояния. При этом в контрольном байте производится установка MSB. Четыре младших бита формируют число 001, свидетельствующее о том, что за контрольным следует единственный байт, - байт состояния. Данная ситуация может возникать достаточно часто, так как Спецификации допускают возможность невыдачи бортовым процессором данных, а также передачу неверных данных в случае, когда запрос не соответствует поддерживаемому производителями автомобиля стандарту. Возможна также ситуация, когда запрашиваемые данные отсутствуют в оперативной памяти процессора в текущий момент времени. Когда чип не получает ожидаемого ответа, или получает повреждённые данные, производится установка MSB контрольного байта, а следом за контрольным выдаётся байт состояния.

При коллизиях в шине интерфейс вырабатывает единственный байт 40 (hex), являющийся контрольным байтом с обнуленным младшим битом. Подобная ситуация может возникать достаточно часто при загрузке автомобильной шины сообщениями более высокого чем у диагностических данных приоритета, - вычислительное устройство должно повторить исходный запрос.