Не могу понять, почему длина UDS мне кажется неправильной - PullRequest
0 голосов
/ 24 января 2020

Я изучаю UDS, и в процессе я наткнулся на этот фрейм данных, зарегистрированный с автомобиля.

Tester,02 10 01 
Car.  ,10 18 50 01 AA AA AA AA  
Tester,30 00 00 .. FLOW CONTROL  
Car.  ,21 AA AA AA AA AA AA AA  
Car.  ,22 AA AA AA AA AA AA AA  
Car.  ,23 AA AA AA AA 00 00 00  

Что я не понимаю, так это: длина в кадре тестера равна 2, затем два байта, что правильно. Обратите внимание, что функция и подфункция учитываются по длине. Но в тестере длина равна 18, но когда я подсчитываю количество байтов (в моем примере это AA), они составляют 22 байта, не считая положительного ответа и подфункции, если мы их включим, то это будет 24. Так же, как и длина в ISO-TP ссылаться только на следующие кадры, а не на первый? Потому что, если мы не создадим первый кадр, в котором было сообщение позиции, длина байтов AA будет 18.

Кроме того, кто-то может направить меня к хорошей библиотеке (желательно в Python сейчас, так как я Я все еще нахожусь в процессе обучения), который реализует UDS, так как я просто делаю все жестко закодировано, и мне не нравится беспорядок, с которым я в конечном итоге.

...