Функция устанавливает связь по заданному протоколу. Для защиты вашей программы а так же для разделения доступа к функционалу программы, команда PassThruSecurityConnect
long PassThruConnect(unsigned long DeviceID, unsigned long ProtocolID, unsigned long Flags, unsigned long BaudRate, unsigned long *pChannelID)
Определение | Выводы | Описание |
---|---|---|
J1850VPW | 2 VPW | Определён стандартами SAE J1850 и SAE J2178 Может одновременно работать с CAN и ISO15765, Не совместим с коммутируемыми протоколами. |
J1850PWM | 2, 10 PWM | Определён стандартом SAE J1850 Может одновременно работать с CAN и ISO15765, Не совместим с коммутируемыми протоколами. |
ISO9141 | 7K,15L Line | Определён стандартами ISO 9141 и SAE J1979 Может одновременно работать с CAN и ISO15765, Не совместим с коммутируемыми протоколами. |
ISO14230 | 7K,15L Line | |
CAN | 6H,14L CAN | Не обработанный CAN поток. Может одновременно работать со всеми протоколами. |
ISO15765 | 6H,14L CAN | Определён стандартами ISO 15765-4 и ISO 14229-1 UDS Может одновременно работать со всеми протоколами. |
SCI_A_ENGINE | Не поддерживается | |
SCI_A_TRANS | Не поддерживается | |
SCI_B_ENGINE | Не поддерживается | |
SCI_B_TRANS | Не поддерживается | |
J1850VPW_PS | Коммутируемый VPW | Определён стандартами SAE J1850 и SAE J2178 Может одновременно работать с CAN и ISO15765, Не совместим с коммутируемыми протоколами. |
J1850PWM_PS | Коммутируемый PWM | Определён стандартом SAE J1850 Может одновременно работать с CAN и ISO15765, Не совместим с коммутируемыми протоколами. |
ISO9141_PS | Коммутируемый K L Line | Определён стандартами ISO 9141 и SAE J1979 Может одновременно работать с CAN и ISO15765, Не совместим с коммутируемыми протоколами. |
ISO14230_PS | Коммутируемый K L Line | Определён стандартами ISO 9141 и SAE J1979 Может одновременно работать с CAN и ISO15765, Не совместим с коммутируемыми протоколами. |
CAN_PS | Коммутируемый CAN | Не обработанный CAN поток. Может одновременно работать со всеми протоколами. |
ISO15765_PS | Коммутируемый CAN | |
J2610_PS | Коммутируемый | |
SW_ISO15765_PS | 1 CAN | |
SW_CAN_PS | 1 CAN | |
GM_UART_PS | Коммутируемый K Line |
Определение | Код | Выводы | Описание |
---|---|---|---|
TP1_6_PS | 0x800A | 6H,14L CAN | |
HONDA_DIAGH_PS | 0x800B | Коммутируемый K L Line | |
J1939_PS | 0x800C | 6H,14L CAN | |
KWP2000_PS | 0x800D | Коммутируемый K L Line | |
TP2_0_PS | 0x800E | 6H,14L CAN | |
ISO14230_TP2_0_PS | 0x800F | 6H,14L CAN | |
ISO14230_TP1_6_PS | 0x8010 | ||
KW1281_PS | 0x8011 | ||
KW1281_TP1_6_PS | 0x8012 | ||
ISO5_PS | 0x8013 | Коммутируемый K Line | |
ISO8_PS | 0x8014 | Коммутируемый K Line | |
DS2_PS | 0x8015 | Коммутируемый K Line | |
DAIHATSU_PS | 0x8016 | 7K Line | |
ISOFORD_PS | 0x8017 | Коммутируемый K Line | |
KW81_PS | 0x8018 | 7K Line | |
KW82_PS | 0x8019 | 7K Line | |
MB_PS | 0x801A | Коммутируемый K Line | |
MBHFM_PS | 0x801B | 7K Line | |
NISSAN_PS | 0x801C | 12K 13L Line | |
MITSUBISHI_PS | 0x801D | 7K Line | |
PEUGEOT_PS | 0x801E | Коммутируемый K Line | |
TOYOTA_PS | 0x801F | 7K Line | |
KIA_PS | 0x8020 | Коммутируемый K Line | |
WABKO_PS | 0x8021 | Коммутируемый K Lin | |
J4_PS | 0x8022 | 7K Line | |
ALDL160_PS | 0x8023 | Коммутируемый K Line | |
CUMMINS | 0x8024 | 6H, 14L CAN |
Название константы | бит | Описание |
---|---|---|
ISO9141_K_LINE | 12 | Использование L линии для инициализации протоколов. 0 = Используется L-линия и K-линия для инициализации 1 = Используется только K-линия для инициализации |
CAN_ID_BOTH | 11 | Приём обоих типов CAN идентификаторов для протоколов CAN and ISO 15765 (смотрите так же бит 8) 0 = Используется 11 или 29 битный идентификатор как определено битом 8 1 = 11 и 29 битные идентификаторы принимаются адаптером. Установка бита 8 игнорируется. |
ISO9141_NO_CHECKSUM | 3 | Проверка контрольной суммы пакета для ISO9141 и ISO14230 0 = Адаптер генерирует и проверяет контрольную сумму как определено стандартом ISO 9141-2 и ISO 14230-2. 1 = Адаптер не генерирует и не проверяет контрольную сумму. |
CAN_29BIT_ID | 8 | Тип CAN идентификатора для протоколов CAN и ISO 15765 0 = Принимаются пакеты с 11 битным идентификатором. 1 = Принимаются пакеты с 29 битным идентификатором. |
Определение | Описание |
---|---|
STATUS_NOERROR | Функция выполнена успешно |
ERR_DEVICE_NOT_CONNECTED | Нет соединения с адаптером. Возможные причины: Адаптер выключен, нет сети, или не правильно задан IP адрес. |
ERR_INVALID_DEVICE_ID | Задан не существующий идентификатор адаптера DeviceID |
ERR_NOT_SUPPORTED | Протоколы SCI на 04.09.16 ещё не поддерживаются адаптером. Так же эта ошибка возникает если задаются не совместимые протоколы. Например одновременно заданы VPW и PWM |
ERR_INVALID_PROTOCOL_ID | Задан не существующий ProtocolID. |
ERR_NULL_PARAMETER | Не задан указатель pDeviceID. |
ERR_INVALID_FLAGS | Задан не существующий флаг |
ERR_INVALID_BAUDRATE | Задана не правильная скорость обмена |
ERR_CHANNEL_IN_USE | Канал уже используется. Определён стандартом J2534.
В реальности этот код ошибки никогда не появится. Так как при повторном вызове команды PassThruConnect произойдёт автоматический вызов команды PassThruDiscоnnect и канал будет переоткрыт.
|
ERR_FAILED | Определён стандартом J2534. В адаптере, для этой функции не используется. |
#include "j2534_lib.hpp"
unsigned long DeviceID;
long Ret;
unsigned long ChannelID;
unsigned long Flags = ISO9141_K_LINE_ONLY;
Ret = PassThruConnect(DeviceID, ISO14230, Flags, 10400, &ChannelID);
if (Ret != STATUS_NOERROR)
{ // Обработка ошибки
}