Как выбрать CAN или CAN FD-трансивер
CAN-контроллер формирует кадры, арбитраж и контроль ошибок, а трансивер преобразует логические TXD/RXD в дифференциальные уровни CANH/CANL. Эти функции иногда находятся внутри одного MCU, но физический трансивер обычно остаётся отдельным. При выборе важно не перепутать контроллер CAN, внешний CAN-controller с SPI и собственно приёмопередатчик физического уровня. CAN FD сохраняет принципы классического CAN, но позволяет увеличить поле данных и использовать более высокую скорость на фазе данных. Для этого недостаточно включить режим в прошивке: контроллер, трансивер, разводка, кабель и все узлы, участвующие в обмене, должны поддерживать нужный режим и временные параметры.
Опишите сеть до выбора микросхемы
Зафиксируйте классический CAN или CAN FD, nominal bit rate, data bit rate, максимальную длину магистрали, число узлов, длину ответвлений и среду эксплуатации. Укажите питание MCU и трансивера, потребность в standby/wake-up, изоляции, защите от автомобильных переходных процессов или промышленного surge.
Для существующей сети выясните, какие уровни и timing уже используются. Новый CAN FD-узел может обмениваться классическими кадрами, но присутствие старых узлов не означает, что по той же шине можно без проверки передавать FD-кадры. Реакция несовместимых контроллеров зависит от режима и конфигурации.
Совместимость логической стороны
Многие высокоскоростные трансиверы питаются от 5 В, а современный MCU работает от 3,3 или 1,8 В. Вариант с отдельным VIO задаёт уровни TXD/RXD по питанию контроллера. Без VIO нужно проверить VIH/VIL входа TXD и амплитуду RXD; фраза «3,3-V compatible» должна подтверждаться datasheet конкретного MPN.
Также проверяют поведение TXD при плавающем входе и выключенном MCU. Нежелательный доминантный уровень способен заблокировать всю шину. Полезны dominant time-out, fail-safe и режим, в котором обесточенный узел не нагружает CANH/CANL. Состояния STBY и EN задают внешними резисторами до старта прошивки.
Задержка ограничивает CAN FD
При росте скорости данных время одного бита уменьшается, и задержка трансивера занимает заметную часть timing budget. Важны propagation delay, symmetry и разброс по температуре. Трансивер, достаточный для классического CAN, не автоматически подходит для 5 или 8 Мбит/с CAN FD.
Длину сети ограничивает не только кабель, но и суммарное распространение туда и обратно, задержки всех трансиверов, кварцев и sample point. Для CAN FD отдельно рассчитывают nominal phase и data phase. Настройки bit timing подтверждают для самого удалённого узла и крайних допусков генераторов.
Топология — магистраль с короткими ответвлениями
Классическая шина имеет два физических конца и ответвления к узлам. Звезда и длинные stubs создают отражения. Допустимая длина ответвления зависит от скорости фронта и data rate; универсального значения для всех сетей нет. Разъёмы и переходы также вносят неоднородности.
Для прототипа полезно измерить дифференциальный сигнал на дальнем узле, а не только рядом с передатчиком. Проверяют амплитуду, ringing, crossing, время установления и ошибки при одновременной активности нескольких узлов.
Два терминатора и их реальное сопротивление
На физических концах магистрали обычно устанавливают два терминатора, соответствующих волновому сопротивлению кабеля. Их параллельное сопротивление, видимое между CANH и CANL при обесточенной сети, позволяет быстро обнаружить отсутствующий или лишний терминатор. Однако измерение омметром не выявляет неправильное размещение и длинные ветви.
Split termination делит сопротивление и подключает среднюю точку к конденсатору для улучшения common-mode поведения. Номиналы и размещение берут из рекомендаций трансивера и EMC-проекта. Терминатор в каждом узле перегружает сеть.
Common-mode choke ставят не автоматически
Синфазный дроссель может уменьшить излучение и восприимчивость, но добавляет индуктивность, паразитную ёмкость и риск резонанса. Некоторые современные CAN FD-трансиверы рассчитаны на соответствие EMC без CMC в определённых условиях. Решение принимают по измерениям и reference design, а не по правилу «на CAN всегда нужен дроссель».
Если CMC используется, выбирают его по common-mode impedance, дифференциальной целостности, току и устойчивости к переходным процессам. Размещают рядом с разъёмом и защитой так, чтобы импульсный ток не проходил через чувствительную землю.
Защита и изоляция
Пределы bus fault, ESD и transient immunity различаются. Автомобильный узел может требовать ISO 7637/LV 124 и AEC-Q100, промышленный — IEC 61000-4-x и гальваническую изоляцию между шкафами. Один высокий показатель HBM ESD микросхемы не заменяет системную защиту разъёма.
TVS выбирают с учётом диапазона common-mode, рабочей ошибки шины, clamp и ёмкости. Изолированный CAN-трансивер упрощает барьер сигналов, но изолированное питание, creepage/clearance и связь экрана с шасси остаются частью проекта.
Режимы standby и wake-up
Для батарейных и автомобильных устройств важны ток сна, bus wake-up, время перехода и фильтрация ложных импульсов. Не каждый standby оставляет приёмник активным одинаково. Проверьте, что уровень RXD в sleep не вызывает ток через выключенный MCU и что wake-сигнал обрабатывается до восстановления основного питания.
В промышленной сети standby может использоваться для безопасного отключения узла, но режим не должен создавать доминантное состояние. Сценарии включения, brown-out и обновления прошивки тестируют при активной шине.
Контроллер CAN, трансивер и тактирование проверяют вместе
Трансивер формирует физические уровни, но арбитраж, bit timing и обработку ошибок выполняет CAN-контроллер. Для CAN FD контроллер должен поддерживать FD-кадры и переключение скорости data phase; замена только трансивера не добавит эту функцию старому MCU.
Допуск генератора, длина сети, задержка кабеля и трансиверов определяют доступное окно выборки. Настройки prescaler, time segments и sample point рассчитывают для всех узлов, а не копируют из одного примера. На высокой скорости data phase особенно важны разброс кварцев и асимметрия задержек.
При вводе сети логируют error counters, переходы error-active/error-passive и bus-off. Успешная передача одного кадра на столе не подтверждает запас в полной топологии и температуре.
Пример выбора для контроллера 3,3 В
Система использует CAN FD с nominal 500 кбит/с и более высокой data phase. MCU имеет 3,3-вольтовые выводы. В shortlist оставляют трансиверы с VIO или явно совместимыми логическими порогами, достаточной скоростью и нормированными задержками. Затем сравнивают режимы standby, fault protection, ESD и корпус.
На плате предусматривают два варианта терминатора только для конечного узла, опциональные CMC/TVS и тестовые точки TXD, RXD, CANH, CANL. Приёмочные испытания включают максимальную длину кабеля, худшие stubs, холод/нагрев и одновременную передачу нескольких узлов.
Как подтвердить запас сети CAN FD
При отключённом питании между CAN_H и CAN_L проверяют суммарное сопротивление терминаторов; для двух резисторов по 120 Ом ожидается значение около 60 Ом с учётом допусков. Затем визуально и по схеме подтверждают, что терминаторы стоят только на физических концах магистрали, а длины ответвлений соответствуют выбранной скорости. Наличие связи на столе с короткими проводами этого не доказывает.
Осциллографом на обоих концах сети наблюдают доминантный и рецессивный уровни, симметрию фронтов, звон и время установления. Для CAN FD измерения делают отдельно на арбитражной скорости и на максимальной скорости фазы данных. Полезный критерий — не только отсутствие ошибок, но и временной запас между установлением сигнала и точкой выборки контроллера. Его проверяют при минимальном и максимальном питании, после прогрева и с полным числом узлов.
Длительный тест должен передавать кадры разной длины и идентификаторов, регистрировать счётчики ошибок, переходы в error-passive и bus-off. Отдельно включают рядом контакторы, двигатели и DC/DC-преобразователи, если они присутствуют в изделии. Для узлов со standby или wake-up проверяют ток сна, пробуждение от шины и безопасное поведение при частично отключённом питании. Результат оформляют вместе с топологией и версиями настроек контроллеров.
Примеры из каталога ChipBaza
Примеры показывают различие архитектур. Pin-to-pin совпадение не доказывает одинаковые задержки, режимы и защиту.
- Microchip MCP2562T-E/SN — пример высокоскоростного CAN-трансивера с отдельным логическим питанием VIO.
- Microchip MCP2562FD-E/SN — пример трансивера семейства, рассчитанного на CAN FD; суффикс и температурный класс проверяют отдельно.
- Texas Instruments SN65HVD230DR — пример CAN-трансивера с 3,3-вольтовым питанием логической и аналоговой части.
- Microchip MCP25625-E/SS — пример компонента, объединяющего CAN-контроллер и трансивер; его нельзя путать с простым physical-layer transceiver.
Частые ошибки
- Покупать внешний CAN-controller вместо трансивера или наоборот.
- Считать любой CAN-трансивер пригодным для высокой скорости CAN FD.
- Игнорировать уровни TXD/RXD между 5- и 3,3-вольтовыми доменами.
- Делать звезду и включать терминатор в каждом узле.
- Добавлять CMC без проверки сигнала и EMC.
- Оценивать только ESD HBM, не проектируя защиту разъёма.
- Не тестировать power-off и stuck-dominant сценарии.
Чек-лист перед заказом
- Разделены функции CAN-controller и transceiver.
- Заданы nominal/data bit rate, длина, узлы и ответвления.
- Проверены VCC, VIO, TXD/RXD и powered-off behavior.
- Задержки и symmetry соответствуют timing budget CAN FD.
- Терминаторы размещены только на концах, топология проверена.
- Решение по CMC, TVS и изоляции основано на требованиях EMC.
- Standby, wake-up, dominant timeout и brown-out испытаны.
- Полный MPN, квалификация и температурный класс подтверждены.
Источники для технической проверки
Параметры и ограничения сверяйте с актуальной документацией производителя для полного артикула и нужного исполнения.
Следующий шаг
Проверьте артикулы и количество до отправки заявки
Загрузите спецификацию в BOM-сервис или пришлите полный код производителя менеджеру. Если точное совпадение не доказано, позиция останется на ручной проверке.