Показать сообщение отдельно
Старый 12.10.2018, 23:32   #278
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 372
T_r_D is a jewel in the roughT_r_D is a jewel in the roughT_r_D is a jewel in the rough
По умолчанию

Отвечаю по порядку.
Про аппаратный фильтр МЦП. Он есть, но его мало.
В ардуине конечно нет ни чего для кана.
Если его хватит, то используйте, но как правило, этого фильтра мало. У него 11 или 12 ID всего можно фильтровать (могу ошибаться по количеству).

НСО154 любой покупай.
Разницы нет.

Про пакеты и "правильный" канхакер.
Нет, такого быть не может. Даже если ардуина не успеет отловить пакет, то они, как правило цикличны. Тоесть ID идёт с каким-то интервалом постоянно.
Только значения разные. Потери значений могут быть, а вот всего ID нет.
Рано или поздно его всё равно обработает ардуина.

Соответственно- открой нам уже тайну- разбери любой блок подключённый к КАН в авто.
Такие потери пакетов свойственны когда разные протоколы КАН.
Ну тоесть FS и FT.
Открыв блок поймём какой протокол.
Отличае протоколов не программное, а физическое!
Там уровни сигналов разные.

А если не хочешь вскрывать, то закажи трансивер TJA1054 или TJA1055.
Спаяй всю его обводку и включи его вместо трансивера на шилде.

Вот что я имел в виду под РАЗНЫМИ:
HS CAN

FT CAN


Нравится?
Совсем похожи да?
Поэтому и сказал- вскрой блок, ну или если есть трансивер под FT(fault tolerant), то пробуй его.
Я пробовал FT читать трансивером HS (Или FS, что одно и тоже. F - fast, H- high), результат похож на твой, только ID побольше...
Но всё равно не полный список.
Так что вскрывай и смотри.

PS. "правильный" канхакер собран на СТМ. Пакетов не теряет, но на этом вся его правильность и заканчивается.
Ещё раз- пакеты, как правило, идут циклично. Тоесть с повтором в несколько миллисекунд. Данные там конечно разные, но ID одинаков.
Так что можно потерять одну посылку ID, но какую-то последующию всё равно поймаешь. Может данные нужные ты и пропустишь, но чтоб совсем пропустить ID не получится.
И "адресный диапазон" тут не подходит. Тут всё в диапазоне 11 или 29 бит пакета. Почитай описание протокола.
T_r_D вне форума   Ответить с цитированием