Quantex GmbH
Ваш регион: Европа

Описание функций dll PassThru стандарта J2534-1/2

Последнее изменение:

Версии стандарта J2534

Существует две версии стандарта SAE J2534:

Версия Путь в реестре Windows Особенности
v04.04 HKLM\SOFTWARE\PassThruSupport.04.04 Базовый набор функций PassThru
v05.00 HKLM\SOFTWARE\PassThruSupport.05.00 Добавлены функции PassThruScanForDevices и PassThruGetNextDevice для динамического обнаружения устройств

Совместимость: Версии не совместимы между собой. Диагностические программы ищут DLL только по своей версии реестра:

Работа с устройствами

v04.04: Поддерживает одновременно только одно устройство, параметры которого прописаны в реестре. Приложение загружает DLL и вызывает PassThruOpen(NULL) для подключения к устройству, указанному в реестре.

v05.00: Поддерживает динамическое обнаружение устройств. Типичный алгоритм работы:

  1. Приложение читает реестр PassThruSupport.05.00 и отображает пользователю список производителей (Vendor)
  2. Пользователь выбирает производителя, приложение загружает соответствующую DLL
  3. Вызов PassThruScanForDevices для сканирования подключённых устройств (проводных и беспроводных)
  4. Вызов PassThruGetNextDevice в цикле для получения информации о каждом найденном устройстве
  5. Приложение отображает список устройств, пользователь выбирает нужное
  6. Вызов PassThruOpen с именем выбранного устройства

Многопоточность

Важно: API J2534 не является потокобезопасным. Протокол ответно-запросный. Пока функция не выполнилась нельзя вызывать следующую. Приложение не должно выполнять асинхронные вызовы к DLL из разных потоков.
Версия Поведение при параллельном вызове
v04.04 Внутри DLL используется mutex — параллельные вызовы блокируются до завершения текущего
v05.00 Возвращается ошибка ERR_CONCURRENT_API_CALL

Функции PassThru API

PassThruScanForDevices Поиск всех подключённых устройств v5.0
PassThruGetNextDevice Получение списка устройств, найденных при вызове PassThruScanForDevices v5.0
PassThruOpen Установление связи с адаптером v4.04 v5.0
PassThruClose Прекращение связи с адаптером v4.04 v5.0
PassThruConnect Создание соединения по протоколу v4.04 v5.0
PassThruDisconnect Удаление соединения v4.04 v5.0
PassThruReadMsgs Чтение принятых сообщений v4.04 v5.0
PassThruWriteMsgs Передача сообщений v4.04
PassThruStartPeriodicMsg Запуск периодического сообщения v4.04 v5.0
PassThruStopPeriodicMsg Удаление периодического сообщения v4.04 v5.0
PassThruStartMsgFilter Установка фильтра сообщений v4.04 v5.0
PassThruStopMsgFilter Удаление фильтра сообщений v4.04 v5.0
PassThruIoctl Управление вводом-выводом v4.04 v5.0
GET_CONFIG / SET_CONFIG Параметры протоколов v4.04 v5.0
GET_DEVICE_INFO / GET_PROTOCOL_INFO Информация об устройстве J2534-2
DoIP (ISO 13400) Диагностика через Ethernet ScanDoc
PassThruSetProgrammingVoltage Установка напряжения программирования v4.04 v5.0
PassThruReadVersion Чтение информации о dll и адаптере v4.04 v5.0
PassThruLogicalConnect Создание логического канала связи поверх физического соединения v5.0
PassThruLogicalDisconnect Закрытие логического канала связи v5.0
PassThruSelect Выбор каналов для мониторинга v5.0
PassThruQueueMsgs Постановка сообщений в очередь канала для передачи v5.0

Дополнительные материалы

Формат логов J2534 v2 Описание формата файлов логирования DLL и библиотек