«Программирование микроконтроллеров — это не только головой, но и руками. Не только руками, но и головой.»

Пролог

Так вышло, что до разработки автомобильной электроники я варил прошивки для infotainment аудиосистем. Поэтому на новые задачи я смотрю через призму прошлого опыта.

Как оказалось при разработке электроники часто приходится работать с CAN шиной. Это не только автомобилестроение, но и электронная начинка для лифтов, поездов, кораблей, космических аппаратов и прочего тоже использует CAN шину для общения между агрегатами.

При прототипировании CAN совместимых устройств часто надо собирать и разбирать различные конфигурации CAN шин. Два устройства, 4 устройства, 8 устройств, потом снова 3 и прочее. Обычно традиционные harness-ы для CAN шины делают как гирлянду из разъемов DB-9.

Однако разъёмы DB-9 содержат 9 пинов, а CAN нужно 2 пина. Можно ошибиться при подключении перемычек. Потом каждый раз развинчивать разъём DB-9 не удобно. В конце концов разъёмы DB-9 устарели.

Я предлагаю собирать отладочные CAN harness-ы на основе всем известных audio jack 3.5mm разъемов. Вот так.

Что надо из оборудования?

Компонент

Назначение

RUR

Audio Jack 3.5mm Connector Mono, Plug to Screw Terminal

Соединение сегментов сети

49

Mini T Type Wire Connector Electric Quick Splice Terminals Crimp Without Breaking Cable Insulated Line Push-in Terminal Blocks

Для ответвление от шины

49

пластиковые Хомуты

для скрепления двух жил кабеля

?

отвертка с плоским шлицем 2,5мм

для закрепления в клеммниках

?

Провод диаметром 0,5-1,5 мм

для передачи CAN пакетов

?

DMM

для прозвонки соединений

?

В самой простой компоновке берём audio jack mono разъём. В клемму + завинчивать CAN_H, в клемму - завинчивать CAN_L.

Так как CAN интерфейс это топология общая шина, то надо как-то делать ответвления от витой пары. Для ответвлений можно задействовать специальные электротехнические присоединители. Для надежности можно даже слегка пропаять врезку в кабель.

По сути задача организации гибкой CAN шины для прототипирования и отладки сводится к изготовлению двух типов CAN секций: FNN и NNF. Лучше даже использовать stereo audio jack и сделать третий провод для GND.

Можно также пристегнуть терминирующий резистор 120 Om практически в любое место.

CAN-шина собранная на основе Audio-Jack обладает следующими достоинствами:

Достоинства

1++Главное достоинство Audio-Jack - моментальное соединение вслепую. Их не нужно переворачивать, как знаменитые DB-9. Это существенно ускоряет процесс разработки электроники.

2++Дешевизна. Себестоимость одной секции такого жгута составляет порядка 200 RUR. Обычно достаточно 3 или 4 секции.

3++Можно удлинять CAN шину за счет переходников вилка-вилка, вилка-гнездо, который можно купить в любом магазине, где торгуют мобильными телефонами или вовсе в киосках метро.

или такой

4++Не нужна отвертка для скрепления гнезда и вилки, как в случае с DB-9.

5++Эстетический вид. Audio jack 3.5 mm - это видовая деталь. Поэтому выглядит такой жгут прилично и стильно.

6++Миниатюрность. Такая CAN шина легко разбирается и собирается. Удобна при транспортировке. Занимает мало места на рабочем столе.

7++Можно отдельным Audio-Jack-ом подключиться к шине осциллографом или переходником с USB-CAN. Буквально в любом месте.

8++Безопасность. Если кто-то ногой заденет лежащую на полу такую CAN шину, то шина легко разорвется и человек не споткнется и не упадет.

9++Позволяет экспериментировать с топологией. Массив, дерево, можно хоть в кольцо CAN шину замкнуть.

10++Этот жгут можно использовать не только для CAN, но и для LIN, 1-Wire, RS-485, A2B и прочих интерфейсов. Хоть питание для новогодних гирлянд собирай.

Недостатки

1--В случае использования разъёмов на кабель нужна сноровка, чтобы припаивать кабели к внутренностям audio-jack. Потребуется термоусадка и паяльный фен.

2--В случае mono разъёма нет заземления. Надо использовать stereo разъём и протягивать еще и GND.

Итог

Удалось смастерить простую конфигурируемую и масштабируемую CAN шину буквально из подручных материалов.

Надеюсь, что этот текст поможет и другим программистам микроконтроллеров собирать удобные CAN harness-ы для отладки своих устройств.

Словарь

Сокращение

Расшифровка

CAN

Controller Area Network

DMM

Digital MultiMeter

FNN

Nest Nest Fork

NFF

Fork Fork Nest

Ссылки

Ссылки

URL

CAN-шина (Теория)

https://habr.com/ru/articles/939978/

Утилита CANcat (или CAN-Мессенджер)

https://habr.com/ru/articles/948770/

Обзор USB-CAN переходника USB2CANFD_V1

https://habr.com/ru/articles/944112/

ЛикБез по CAN-FD

https://habr.com/ru/articles/793966/

Обзор Переходника USB-CAN (SYS TEC USB-CANmodul1)

https://habr.com/ru/articles/794310/

Сканирование шины RS485

https://habr.com/ru/articles/752292/

Обзор Протокола ISO-TP [ISO 15765-2]

https://habr.com/ru/articles/798489/

Обзор USB-CAN переходника USBCAN-II C

https://habr.com/ru/articles/794831/

Earphone Audio Jack 3.5mm Connector Stereo Adapter 3.5mm RCA Audio Mono Channel Plug to Screw Terminal Audio Mono Channel Plug

https://aliexpress.ru/item/1005007991098865.html?spm=a2g2w.orderdetail.0.0.2a114aa6knhFi6&sku\_id=12000043183252198&\_ga=2.163899903.1346812183.1760021878-124282755.1747301931

Вопросы

--Существуют ли микросхемы физики CAN с гальванической изоляцией? Да. Вот примеры CA-IS3050G, CA-IS3052G, CA-IS3050W, CA-IS3052W, CA-IS3050U, CA-IS3050WG от http://e.chipanalog.com/

Комментарии (41)


  1. iliasam
    15.10.2025 19:50

    Достоинства-то перечислены, а недостатки?
    В первую очередь, такие разъемы не имеют никакой защиты от случайного выдергивания, хотя в тексте это в плюсы записано.

    "В конце концов разъёмы DB-9 устарели"
    А какая им есть альтернатива?


    1. aabzel Автор
      15.10.2025 19:50

      А какая им есть альтернатива?

      Вот хотя бы XS16JK-9P
      https://neokt593.ru/XS16JK-9P(гайка) M
      XS16JK-9P (гайка) M разъём цилиндрический GX16


    1. aabzel Автор
      15.10.2025 19:50

      Достоинства-то перечислены, а недостатки?

      Некоторые audio jack трудно паять на кабель.
      Так чтобы не было короткого замыкания внутри пластпаски.


      1. sic
        15.10.2025 19:50

        Ну это решается простой советской синей изолентой.


    1. aabzel Автор
      15.10.2025 19:50

      В первую очередь, такие разъемы не имеют никакой защиты от случайного выдергивания, хотя в тексте это в плюсы записано.

      Да. В этом и удобство. Это же только для прототипирования на столе и в макете автомобиля.


  1. zatim
    15.10.2025 19:50

    Для CAN шины еще нужен третий проводник - общий провод.


    1. aabzel Автор
      15.10.2025 19:50

      Почему же у меня по двум проводам пакеты проходят от MCU в PC?

      CAN-это же diff пара. Ей только разность напряжений нужна.


      1. zatim
        15.10.2025 19:50

        Почему же у меня по двум проводам пакеты проходят от MCU в PC?

        Через паразитные цепи/подтяжки/защитные диоды потенциалы общих проводов двух гальванически развязанных систем могут выравниваться. А могут и не выравниваться. Подайте на одну из связанных частей принудительно напряжение смещения вольт эдак 15-20 и посмотрите, будут ли так же проходить пакеты. А еще лучше - посмотрите в даташите на вашу микросхему драйвера, какое максимальное синфазное напряжение линии она терпит.


        1. DanilinS
          15.10.2025 19:50

          2-х проводов достаточно. А напряжение смещения в 15-20 вольт в реальных условиях смонтированного оборудования практически не встретить.

          Так что наличие провода выравнивания потенциала желательно, но не необходимо. Нужно смотреть индивидуально. В отдельных случаях это может принести вред. Например, при монтаже оборудования в разных сегментах питания, можем легко иметь разность потенциалов в десятки вольт. С очень хорошей величиной тока выравнивания потенциала.


          1. zatim
            15.10.2025 19:50

            В отдельных случаях это может принести вред.

            В описанном вами примере, если вы не кинете общий провод, то у вас выгорит драйвер шины. В чем у вас заключается вред? В том, что по проводу потечет некий уравнивающий ток? Ну и что. Провод для того и придуман, чтобы по нему тек ток. А вот если вы не кинете этот провод у вас выгорит микросхема драйвера, которая может потянуть за собой еще и процессор. Такое повреждение оборудования больше тянет на определение "вред"


            1. randomsimplenumber
              15.10.2025 19:50

              Ну, потечет уравнивающий ток 10А.. ну, расплавится что-то.. ;)


              1. zatim
                15.10.2025 19:50

                Ага, ага) а че не 1000 А? Мелко плаваете)


                1. randomsimplenumber
                  15.10.2025 19:50

                  Что-то испарится ;)

                  Пора изобретать гальваническую развязку, или кинуть провод потолще? ;)


                  1. zatim
                    15.10.2025 19:50

                    Нет, вам пора изобретать логику и здравый смысл) ну и в электричествах немного разобраться тоже не помешает.


                    1. randomsimplenumber
                      15.10.2025 19:50

                      в электричествах все сложное ;) а расскажите, чем ограничивается уравнивающий ток и откуда он взялся?


                      1. zatim
                        15.10.2025 19:50

                        Знаете, мне сейчас недосуг кормить тролля) у меня есть много более интересных и полезных занятий.


          1. Zenitchik
            15.10.2025 19:50

            Я, конечно, нуб, но у меня есть смутное подозрение, что между оборудованием "в разных сегментах питания" связь должна быть гальванически развязанной.


            1. aabzel Автор
              15.10.2025 19:50

              У меня на PCB физика CAN трансивера ( AZKN1044T ) без гальванической изоляции.

              Существуют ли микросхемы физики CAN с гальванической изоляцией?


              1. alcotel
                15.10.2025 19:50

                Есть у chipanalog видел изоляцию вместе с питанием. Но в принципе никто не запрещает добавить обычный изолятор на цепи txd/rxd. Тут нет приколов типа как в i2c, обычные кмоп-сигналы.


              1. zatim
                15.10.2025 19:50

                Существуют ли микросхемы физики CAN с гальванической изоляцией?

                Конечно. ISO1050, например.


                1. aabzel Автор
                  15.10.2025 19:50

                  А есть ли изолированный CAN-FD?


                  1. zatim
                    15.10.2025 19:50

                    Это физический уровень, там нолики и единички. Поэтому драйверу без разницы, FD там или не FD.


                    1. aabzel Автор
                      15.10.2025 19:50

                      Это физический уровень, там нолики и единички. Поэтому драйверу без разницы, FD там или не FD.


                      Я имел в виду, что все изолированные CAN-PHY по спецификации до 1 MBit/s.
                      А CAN-FD только начинается с 1 MBit/s и заканчивается 12 MBit/s


                      1. zatim
                        15.10.2025 19:50

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


            1. randomsimplenumber
              15.10.2025 19:50

              Вот мне тоже так кажется. Спецэффекты от выравнивания могут быть сильно разные.


            1. aabzel Автор
              15.10.2025 19:50

              то между оборудованием "в разных сегментах питания" связь должна быть гальванически развязанной.

              Это дорого. Такого обычно нет. Зато внутри CAN-PHY есть электростатические разрядники до 8000 Вольт. Называется это ESD protection.


        1. aabzel Автор
          15.10.2025 19:50

          Подайте на одну из связанных частей принудительно напряжение смещения вольт эдак 15-20 и посмотрите, будут ли так же проходить пакеты. А еще лучше - посмотрите в даташите на вашу микросхему драйвера, какое максимальное синфазное напряжение линии она терпит.


          В физике моего CAN трансивера заложена electrostatic discharge voltage до 8000 Воль.


          1. zatim
            15.10.2025 19:50

            Это не то. Напишите название микросхемы, я сам посмотрю.


            1. aabzel Автор
              15.10.2025 19:50


        1. GrixaYrev
          15.10.2025 19:50

          Изолированный (гальванически развязанный) CAN решает эту проблему.


  1. randomsimplenumber
    15.10.2025 19:50

    Можно купить ведро соединителей для rgb лент. Уже обжатых.


    1. aabzel Автор
      15.10.2025 19:50

      И как тут помогут RGB соединители?


      1. randomsimplenumber
        15.10.2025 19:50

        Они готовые, дешевые, односторонние (нельзя перепутать полярность), с фиксацией.


  1. mlnw
    15.10.2025 19:50

    Зачем придумывать велосипеды, когда есть RJ-45. Хочешь экранируй его, хочешь питание и землю по трем оставшимся парам прокидывай.


    1. randomsimplenumber
      15.10.2025 19:50

      Потом какой то незнакомый чувак:

      О, rj45. Воткну ка я его в свой ноут.


      1. mlnw
        15.10.2025 19:50

        Подключать CAN и RS485 по RJ45 + FTP - вполне стандартная практика. Если в местах с подобным оборудованием ходят неквалифицированные специалисты с ноутами, пихающими в них что ни попадя - это не проблема оборудования.


      1. alcotel
        15.10.2025 19:50

        И... ничего не произойдёт. Гораздо хуже будет, если в ноутбук вы воткнёте незащищённый PoE, который через RJ-45 работает штатно.


  1. alcotel
    15.10.2025 19:50

    Очень уж хлипкие эти мини-джеки. Не знаю почему, но быстро уж они ломаются.

    Когда-то давно в мобильную технику разработчики пытались ставит джеки 2,5 мм. Но они оказались ещë более хлипкие, и про 2,5 мм все быстро забыли.

    В профессиональном аудио всë-таки ставят джеки 6,3 мм. Они гораздо надëжнее. Ещë бы - конструкция этих джеков придумана больше 100 лет назад.

    Ну и конечно, главное достоинство джеков забыли - моментальное соединение вслепую. Их не нужно переворачивать, как знаменитые type A и B.


    1. aabzel Автор
      15.10.2025 19:50

      Когда-то давно в мобильную технику разработчики пытались ставит джеки 2,5 мм. Но они оказались ещë более хлипкие, и про 2,5 мм все быстро забыли.

      У меня был такой на Nokia 6300


  1. svitoglad
    15.10.2025 19:50

    Микросхемы цифровой изоляции это например ISO1044.


  1. VM1989
    15.10.2025 19:50

    Человечество в давние времена уже всё изобрело. Называется 3 pin Deutsch connector. Крепкий, герметичный, стоит на али 50₽, или 200р за комплект.