
Комментарии 11
3D принтеры тоже на CAN работают. В обычной вороне 2 сидят 4 клиента на шине.
В лабораторном оборудовании тоже бывает CAN.
CAN это хорошо, но русский надо подтянуть. Читать больно.
Тут уже проблемы не (только) с "языком" а с "писательством" Нейрослоп зачастую выглядит более человечно.
вы пойдёте по этому мосту
Писать свои инструменты
ну это типа как плохой перевод с другого языка
Я вас услышал. К этому нужно отнестись по серьезный. Я не придал этому значение.
Учитель по русскому языку и литературе была Максенцова Светлана Петровна учила хорошо. А я не учился.
Хорошо что статья короткая. Спасибо буду иметь ввиду.
CAN это хорошо, но язык Си для работы с ним совсем не обязателен. Можно программировать на любом. На каком-нибудь питоне даже поудобнее, можно не париться с распределением и освобождением памяти.
upd: Судя по вашим исходникам, вы и так особенно с этим не паритесь, но таком пути вас ожидают неприятные сюрпризы с битыми данными, Наивно рассчитывать, что всегда массивы будут заполняться до штатной длины.
Я с вами согласен разложить на биты и байты индификотор и поле данных j1939 любой язык подойдёт. Но в планах программировать микроконтроллеры поэтому С.
По количеству элементов например PGN 16 разрядов максимальное количество этих элементов 65 535 + 0 это тоже значение итого 65 536 элементов расширение опускаем.
65 536 колличество этих элементов больше ни когда не будет. То что касается счётчика у меня 32 разрядные инты без знака. Да здесь возможно переполнение. Но переполнить 4.3 миллиарда ? Тогда нужно сделать 64 разрядные переменные здесь я точно за пределы не выйду. arr [65536] да здесь много памяти не используется . 256 КБ Для современного устройства я думаю это не критично. Оптимизацией не занимался вообще. Единственное , что я делал адрес должен быть кратен размеру данных. Там где достаточно 8 разрядных переменных я обьявил 16.
По поводу языков программирования я думаю у каждого своя стихия. Мое личное мнение автоэлектрику нужно осваивать си. Мне например была интересна тема память как тут с python. Мне интересен низкий уровень.
Писать свои инструменты лучший способ изучить CAN-шину