Отказ от ответственности
Все нижеследующее выражает личное мнение автора, возможно, мне неизвестны какие-либо существенные факты либо знаковые плюсы и минусы какого-то стандарта либо я недооцениваю их потенциал.
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. Однако, благодаря своим уникальным качествам, нашёл применение в таких ответственных отраслях как промэлектроника, авиация, космонавтика, ЖД и морской транспорт.