Проблема проекта CAN-BUS j2534 с получением данныхC#

Место общения программистов C#
Ответить
Anonymous
 Проблема проекта CAN-BUS j2534 с получением данных

Сообщение Anonymous »

я пытаюсь создать проект на C#, который будет работать с j2534 Tactrix OpenPort 2.0 dll.
используя этот пакет nuget: https://github.com/BrianHumlicek/J2534-Sharp.git J2534-Sharp.
Так что делаю все, как показано в примере проекта github, и пытаюсь распечатать результат:

Код: Выделить всё

        private void Button1_Click(object sender, EventArgs e)
{
var allApis = APIFactory.GetAPIinfo();

// Find OpenPort 2.0 driver
var openportApi = allApis.FirstOrDefault(api =>
api.Filename.Contains("op20pt32.dll"));

if (openportApi == null)
{
MessageBox.Show("OpenPort driver not found!");
return;
}

string DllFileName = openportApi.Filename;

Channel Channel = APIFactory.GetAPI(DllFileName).GetDevice().GetChannel(Protocol.ISO15765, Baud.ISO15765_500000, ConnectFlag.NONE);

Channel.SendMessage(new byte[] { 0x00, 0x00, 0x07, 0xE0, 0x01, 0x00 });
GetMessageResults Response = Channel.GetMessage();
if (Response.Result == ResultCode.STATUS_NOERROR && Response.Messages.Length > 0)
{
richTextBox1.AppendText("Received message(s):\n");

foreach (var message in Response.Messages)
{

richTextBox1.AppendText($"  Data: {BitConverter.ToString(message.Data)}\n");

richTextBox1.AppendText($"  Bytes: {string.Join(" ", message.Data.Select(b => $"0x{b:X2}"))}\n");

richTextBox1.AppendText($"  Timestamp: {message.Timestamp}\n");
richTextBox1.AppendText($"  RxStatus: {message.RxStatus}\n");
richTextBox1.AppendText("\n");
}
}
else
{
richTextBox1.AppendText($"No messages received. Result: {Response.Result}\n");
}

// GetMessageResults Response = Channel.GetMessage();
}
он подключается к моему проводу Tactrix и
отправляет 0x07, 0xE0, 0x01, 0x00 - здесь 0x7EO будет canID, а 0100 будет данными, но в анализаторе can я вижу, что он помещает 0x2 перед любыми данными, поэтому он отправляет 0x020100 вместо 0x0100
дает мне вывод:
Полученные сообщения:
Данные: 00-00-07-E0
Байты: 0x00 0x00 0x07 0xE0
Отметка времени: 2867681718
RxStatus: TX_MSG_TYPE, TX_INDICATION - это всегда эхо-идентификатор, который я отправляю в шину.
также пробовал проект Python github j2534 с графическим интерфейсом пользователя:
он отправляет данные отлично, но не может получить ни одного сообщения
в чем может быть проблема, пожалуйста?

Подробнее здесь: https://stackoverflow.com/questions/798 ... eving-data
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»