Доступ к системным часам CANalyzer CAPL

Я работаю с приложением CAN, и у меня проблемы с синхронизацией. Кажется, есть некоторая разница во времени между завершением моей функции записи сообщения CAN и фактической передачей сообщения CAN. Итак, я хочу измерить время между ними. Функция записи находится на C ++, поэтому достаточно простого вызова GetTickCount, чтобы узнать, когда функция записи завершится. Проблема в том, чтобы знать, когда происходит настоящая передача.

Я использую CANalyzer компании Vector для мониторинга своей CAN-шины, и слышал, что у нее есть программный интерфейс (CAPL). Что я хотел бы сделать, так это получить время на часах ПК, в которое фактически было передано сообщение. Есть ли какой-нибудь системный интерфейс CAPL, который я мог бы использовать для этого?


person Bondolin    schedule 20.04.2017    source источник


Ответы (1)


Было бы проще измерить время в вашей программе на C ++. Драйвер CAN должен обеспечивать некоторую «функцию обратного вызова подтверждения передачи». Драйвер CAN вызывает эту функцию, как только сообщение было успешно передано. Вам нужно будет настроить обратный вызов и измерить время между вашей операцией записи CAN и этим обратным вызовом.

person sergej    schedule 25.04.2017
comment
Я согласен, что это было бы лучшим решением, чем моя текущая установка, к сожалению, я использую довольно высокоуровневый интерфейс CAN, который не имеет такого обратного вызова с подтверждением. - person Bondolin; 25.04.2017