Quantex GmbH
您的地区:欧洲

J2534-1/2 标准 PassThru dll 函数说明

最后修改:

J2534 标准版本

SAE J2534 标准存在两个版本:

版本 Windows 注册表路径 特点
v04.04 HKLM\SOFTWARE\PassThruSupport.04.04 PassThru 基本函数集
v05.00 HKLM\SOFTWARE\PassThruSupport.05.00 新增 PassThruScanForDevicesPassThruGetNextDevice 函数,用于动态发现设备

兼容性:两个版本之间互不兼容。诊断程序仅按其自身的注册表版本查找 DLL:

设备操作

v04.04:同一时间仅支持一个设备,其参数写入注册表中。应用程序加载 DLL 并调用 PassThruOpen(NULL) 连接到注册表中指定的设备。

v05.00:支持动态发现设备。典型工作流程:

  1. 应用程序读取 PassThruSupport.05.00 注册表,并向用户显示厂商(Vendor)列表
  2. 用户选择厂商,应用程序加载相应的 DLL
  3. 调用 PassThruScanForDevices 扫描已连接的设备(有线和无线)
  4. 循环调用 PassThruGetNextDevice 获取每个已找到设备的信息
  5. 应用程序显示设备列表,用户选择所需设备
  6. 使用所选设备的名称调用 PassThruOpen

多线程

重要:J2534 API 不是线程安全的。协议为请求-应答式。在某个函数执行完成之前,不能调用下一个函数。应用程序不得从不同线程对 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 进行诊断 Quantex
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 与库的日志文件格式说明