PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Общение с машиной (http://pccar.ru/forumdisplay.php?f=14)
-   -   CITROEN-ARDUINO (http://pccar.ru/showthread.php?t=23275)

autowp 04.02.2016 01:31

Лог должен быть в hex и выровненным, если вы хотите, чтобы в нем кто-то разбирался

https://en.wikipedia.org/wiki/ISO_15765-2
Написано, что первым является то сообщение, у которого в старших четырех битах единица (0001).
Так же сообщение может быть первым и единственным, если в вся посылка уместилась в 1 фрейм. Тогда в старших битах 0 (0000)

T_r_D 04.02.2016 02:04

Цитата:

Сообщение от autowp (Сообщение 350648)
Лог должен быть в hex и выровненным, если вы хотите, чтобы в нем кто-то разбирался

https://en.wikipedia.org/wiki/ISO_15765-2
Написано, что первым является то сообщение, у которого в старших четырех битах единица (0001).
Так же сообщение может быть первым и единственным, если в вся посылка уместилась в 1 фрейм. Тогда в старших битах 0 (0000)

тоесть моё сообщение является стартовым поскольку 16 в хексе это 0x10, что есть 00010000.
И если бы оно начиналось на 0x0, то это тоже то, что мне надо.

С этим разобрались.

T_r_D 04.02.2016 02:56

Так я правильно понял что информация о фреймах находиться в 4 байте который 25 в DEC или 0x19 в HEX?
Мне же эти данные и нужны для сборки пакета целиком. Как я без них его соберу-то?

мой лог в HEX
10 0D 10 1D 19 10 56 45
04 00 60
30 00 0A
10 00
21 53 54 49 20 46 4D 90
00 00 00 00 00 00 00 D0
00 FF FF 00 55 00 00 00
01 03 92 40 00 D0 00 10
00 00 02 6F 00 59 00 00
FF FF 00 50 00 00 00 00
01 00 00 00 00
00 FF FF 00 00 07 38 09
02 3F FF FF FF 00 FF FF

autowp 04.02.2016 03:04

Цитата:

Сообщение от T_r_D (Сообщение 350658)
Так я правильно понял что информация о фреймах находиться в 4 байте который 25 в DEC или 0x19 в HEX?
Мне же эти данные и нужны для сборки пакета целиком. Как я без них его соберу-то?

Абсолютно нет.

Забудьте на время про радиостанции, названия и прочее.
Перед вами CAN TP сообщение, передаваемое по кускам (CAN-фреймам).

Вся информация, необходимая для того, чтобы собрать сообщение в целую посылку, согласно таблице https://en.wikipedia.org/wiki/ISO_15765-2 , находится в 7 .. 4 (byte 0), 3 .. 0 (byte 0), 15 .. 8 (byte 1)

Вот когда соберете, тогда и будете думать про 4ый байт, названия станций и прочую полезную нагрузку посылки

T_r_D 04.02.2016 04:26

Цитата:

Сообщение от autowp (Сообщение 350659)
Абсолютно нет.

Забудьте на время про радиостанции, названия и прочее.
Перед вами CAN TP сообщение, передаваемое по кускам (CAN-фреймам).

Вся информация, необходимая для того, чтобы собрать сообщение в целую посылку, согласно таблице https://en.wikipedia.org/wiki/ISO_15765-2 , находится в 7 .. 4 (byte 0), 3 .. 0 (byte 0), 15 .. 8 (byte 1)

Вот когда соберете, тогда и будете думать про 4ый байт, названия станций и прочую полезную нагрузку посылки

Так, тоесть
7-4 бит байта 0 говорит нам о длине пакета. В данном случае он равен 1, тоесть 8..4095.

3-0 бит байта 0 это длина сообщения которую надо сложить с чем?
Что такое 15 .. 8 (byte 1)? это полностью первый байт или что?
Судя по всему пол байта 0 нужно сложить с байтом 1. Так?

Тогда получается что нам нужны 6 байт в этом пакете, а остальные 7 нужно добирать из сообщения которое начинается с 2, тоесть в бинаре старшие биты 7-4 0010, начиная со следующего байта или с байта идентификатора?
Так?
10 0D 10 1D 19 10 56 45 21 53 54 49 20 46 4D
или так?
10 0D 10 1D 19 10 56 45 53 54 49 20 46 4D 90

А биты 3-0 в байте 0 указывают на количество пакетов или на количество оставшихся или просто на номер этого пакета?

autowp 04.02.2016 10:44

Цитата:

Сообщение от T_r_D (Сообщение 350663)
Так, тоесть
7-4 бит байта 0 говорит нам о длине пакета. В данном случае он равен 1, тоесть 8..4095.

3-0 бит байта 0 это длина сообщения которую надо сложить с чем?
Что такое 15 .. 8 (byte 1)? это полностью первый байт или что?
Судя по всему пол байта 0 нужно сложить с байтом 1. Так?

Тогда получается что нам нужны 6 байт в этом пакете, а остальные 7 нужно добирать из сообщения которое начинается с 2, тоесть в бинаре старшие биты 7-4 0010, начиная со следующего байта или с байта идентификатора?
Так?
10 0D 10 1D 19 10 56 45 21 53 54 49 20 46 4D
или так?
10 0D 10 1D 19 10 56 45 53 54 49 20 46 4D 90

А биты 3-0 в байте 0 указывают на количество пакетов или на количество оставшихся или просто на номер этого пакета?

Ни так, ни так.
Зачем вы тащите сюда 10 0D?

Сходите по ссылке на wiki. Все, что обозначенно "data" - это данные. Их и надо собирать, чтобы получить содержимое сообщения.

Сами же вот правильно рассуждает, а делаете по-другому.

> Тогда получается что нам нужны 6 байт в этом пакете, а остальные 7 нужно добирать из сообщения которое начинается с 2

Т.е. от первых двух сообщений надо 6+7=13 байт.

Ваш "Так?" мне не понятен.по какой причине вы выкинули последний байт фрейма?

GASCHE 04.02.2016 12:10

Это посылка
10 0D 10 1D 19 10 56 45 First frame
30 00 0A 10 00 00 00 00 Flow control frame
21 53 54 49 20 46 4D 90 Consecutive frame
это данные в этой посылке
10 1D 19 10 56 45 53 54 49 20 46 4D 90
Не знаю как у вас но если стандартно то
10 - SID
1D - PID
19 10 56 45 53 54 49 20 46 4D 90 Какие то данные
Cудя по SID это запрос каких-то данных

Dmitry8 04.02.2016 13:26

10 0D 10 1D 19 10 56 45 - First Frame , данные 13 байт
30 00 0A - Flow Control
21 53 54 49 20 46 4D 90 - Consecutive Frame
Данные тут: 10 1D 19 10 56 45 53 54 49 20 46 4D 90
... VESTI FM

lti1 04.02.2016 13:41

Вложений: 1
Господа, а что означают выделенные данные в таком пакете? Машина другая, FF3, но раз пошла такая пляска...

10 90 A3 0 0 5 0 5
21 0 0D 10 10 10 0 0A
22 0 55 0 53 0 42 0
23 0 0 4C 0 69 0 6B
24 0 65 0 20 0 4E 0
25 6F 0 62 0 6F 0 64
26 0 79 0 20 0 45 0
27 6C 0 73 0 65 0 0
28 0 4D 0 79 0 20 0
29 44 0 61 0 72 0 6B
2A 0 65 0 73 0 74 0
2B 20 0 44 0 61 0 79
2C 0 73 0 0 4 1F 0
2D 2E 0 20 0 35 0 2F
2E 0 31 0 33 0 0 0A
2F 0A 0A 2 4 1E 4 3F
20 4 46 0 2E 0 0 4
21 1F 4 40 4 3E 4 41
22 4 3C 0 2E 0 0 4
23 18 4 3D 4 44 4 3E
24 0 0 CF 0 0 0 0

Вот, что на дисплее отображается в данный момент.

Dmitry8 04.02.2016 13:49

10 90 A3 0 0 5 0 5 - First frame
всё что дальше: 144 байта - Consecutive frame


Часовой пояс GMT +4, время: 02:27.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot