Есть ли способ отправить ответ диагностики c (UDS) с одной шины на другую с помощью capl? - PullRequest
0 голосов
/ 16 апреля 2020

У меня ситуация, когда я делаю запрос на диагностику c от каноэ. ECU отвечает с ответом (запрос получен правильно, но ответ находится на рассмотрении). Через некоторое время я получаю положительный ответ от ECU. Я просто хочу отправить положительный ответ с текущей шины на другую, отключив ответ в ожидании ответа. Как я могу сделать это с помощью capl?

1 Ответ

0 голосов
/ 19 апреля 2020

Вам необходимо реализовать шлюз. Т.е. узел подключен к двум шинам. Для одной шины узел выступает в качестве тестера (отправляет запросы и прослушивает ответы), для другой шины узел действует как ECU.

Вы прослушиваете ответы в одной шине с помощью on diagResponse CAN1.*, и если это положительный ответ, вы отправляете его на другую шину с помощью diagSendResponse CAN2.<responseMessage>

Замените CAN1 и CAN2 фактическими названия автобусов.

Также проверьте примечание по применению под названием Шлюз диагностики или что-то подобное, поставляемое с CANoe.

Другой вариант - сделать это не на прикладном уровне, а на уровне данных. Т.е. не путем прослушивания и пересылки диагностических сообщений, а путем прослушивания переданных данных. Что имеет больше смысла для вас, зависит от вашей точной настройки; но детали неизвестны.

...