Skip to main content

Обзор цифровых интерфейсов современного автомобиля

Отказ от ответственности

Все нижеследующее выражает личное мнение автора, возможно, мне неизвестны какие-либо существенные факты либо знаковые плюсы и минусы какого-то стандарта либо я недооцениваю их потенциал.

LIN

Интерфейс LIN (aka ISO17987) — пожалуй самый длинный (если сравнивать по длине линий, а не по весу меди в проводах) пучок в современном авто. Как говорится —  модно, доступно, молодёжно. Принцип необходимой достаточности и минимальной цены решения применяемый для некритичных к надёжности и/или безопасности компонент: климатическая установка, кнопки мультируля, стеклоподьемники, замки дверей. Протокол по физике очень похож (берет своё начало) от K-line протокола диагностики, стандартизованного как ISO9141. Во многих микроконтроллерах реализуется на основе аппаратного UART (в том же STM8 имеюттся аппаратные дополнения к UART для поддержки различных реализаций LIN)

Характеристики:

  • 2002г — дата первой публикации (первые черновики датируются 1999г)
  • однопроводная шина с PullUp
  • длина шины до 40 метров
  • коммуникация по принципу ведущий — ведомые (до 16-ти ведомых)
  • скорость до 20 кбит/с
  • длина пакета 2, 4 или 8 байт
  • поддержка широковещательного режима
  • контроль целостности данных с помощью CRC8
  • возможность определения сбойного абонента

CAN

Интерфейс CAN (aka ISO11898) — пожалуй, самый известный интерфейс современного автомобиля, во многом благодаря использования как стандарт де-факто для интерфейса диагностики инжекторного двигателя — аля OBD2. Однако, благодаря своим уникальным качествам, нашёл применение в таких ответственных отраслях как промэлектроника, авиация, космонавтика, ЖД и морской транспорт.

(далее…)

читать...

CAN FD: ISO11898-1:2015 против Robert Bosh GmbH

Введение

Как многим известно, не все контроллеры с поддержкой CAN-FD одинаково полезны, поскольку существует  2 реализации:

  • Первая версия протокола CAN FD, описанная в документа от Роберта Боша в 2012г (эта версия также известна как non-ISO CAN FD)
  • Вторая версия протокола CAN FD, стандартизованная как обновленный ISO11898-1 в 2015г (эта версия встречается под рекоммендованом CiA термином ISO CAN FD)

Версии  CAN FD

Часто сложно понять какая же версия CAN FD реализована (особенно если речь идёт о первой версии — производители не очень красноречивы), но есть косвенные признаки:

  • упоминание в спецификации SBC (или Staff bit counter)
  • упоминание в программной модели бита переключения режимов FD: ISO/nonISO

При отсутствии этих признаков Вы, скорее всего, имеете дело с nonISO CAN FD. Важно отметить, что эти версии несовместимы между собой, однако на рынке до сих пор находится некоторое количество оборудования, поддерживающего только nonISO CAN FD (само собой в режиме передачи кадров традиционного CAN 2.0 совместимость присутствует). Для всех новых разработок настоятельно рекомендуется использование именно ISO CAN FD реализации. С точки зрения ПО и взаимодействия с регистровой моделью отличия версий никак не проявляются (различия протоколов никак не видны пользователю).

(далее…)

читать...