Перейти к содержанию
    

Написать драйверы и библиотеки CAN

10 hours ago, leocat said:

Имел я как то "удовольствие" работать с CAN под линуксом... В конечном счёте "скатился" до решения: промежуточное устройство на STM32. USB<->CAN. Так и проще и надёжнее. В линукс видится как VCP. Да и более универсально получается это решение. Любой компьютер, любая ОСь, хоть Win.

 

Поддерживаю. С этими PCI'ными CAN-контроллерами извечная проблема: разработчики выкладывают крайне древние модули ядра и в итоге забивают на поддержку. Есть у нас такие динозавны: стоит аж третье ядро!!! Поэтому я пошел другим путем: сделал свой CAN<>USB, с ним и работаю. Претензий нет ☺

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, Eddy_Em said:

Поддерживаю. С этими PCI'ными CAN-контроллерами извечная проблема: разработчики выкладывают крайне древние модули ядра и в итоге забивают на поддержку. Есть у нас такие динозавны: стоит аж третье ядро!!! Поэтому я пошел другим путем: сделал свой CAN<>USB, с ним и работаю. Претензий нет ☺

Этих CAN-USB как блох у собаки по 20-30$. Осталось только осчастливить ТС.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У моего себестоимость 300р, свой протокол и свободная прошивка - добавляй, что хочешь...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, Eddy_Em said:

У моего себестоимость 300р, свой протокол и свободная прошивка - добавляй, что хочешь...

Так и я не покупаю. Штук 10 валяется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 12/5/2020 at 11:26 PM, Eddy_Em said:

Поддерживаю. С этими PCI'ными CAN-контроллерами извечная проблема: разработчики выкладывают крайне древние модули ядра и в итоге забивают на поддержку. Есть у нас такие динозавны: стоит аж третье ядро!!! Поэтому я пошел другим путем: сделал свой CAN<>USB, с ним и работаю. Претензий нет ☺

А что под линуксом даже не рассматривается, что CAN бывает в виде встроенного в проц. модуля? Только переходники с PCI, USB?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

31 минуту назад, C2000 сказал:

А что под линуксом даже не рассматривается, что CAN бывает в виде встроенного в проц. модуля? Только переходники с PCI, USB?

Нам нужен только под Линуксом, что то типа http://robot-develop.org/archives/4110 с библиотеками тира http://www.canfestival.org. Как я понял из прочтения данной статьи, у нас не работает нормально CanOpen SDO протокол. 

Ну и желательно изменить библиотеки. Это большая работа.

Изменено пользователем Samum421

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

27 minutes ago, Samum421 said:

Нам нужен только под Линуксом, что то типа http://robot-develop.org/archives/4110 с библиотеками тира http://www.canfestival.org. Как я понял из прочтения данной статьи, у нас не работает нормально CanOpen SDO протокол. 

Ну и желательно изменить библиотеки. Это большая работа.

 

Понятно что драйвер нужен под Linux. Вопрос: у процессоров под работающих под Linux не бывает встроенных CAN модулей? В частности у того что указан автором. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 минуты назад, C2000 сказал:

Понятно что драйвер нужен под Linux. Вопрос: у процессоров под работающих под Linux не бывает встроенных CAN модулей? В частности у того что указан автором. 

Имеется. A40i Allwinner, Nuvoton NUC980DK71YC все они с CAN выходом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

CAN на борту процессора или внешняя микросхема. Выложили бы хотя бы схему того что имеете.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В сети можно найти в описании одного из модулей на A40i:

image_40i.jpg.11145e22c22c38e4ea46c0b955ef3f9a.jpg

Из чего можно предположить что CAN модуль есть на борту самого процессора и никаких PCI и USB не требуется.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 12/6/2020 at 3:16 PM, Eddy_Em said:

У моего себестоимость 300р, свой протокол и свободная прошивка - добавляй, что хочешь...

Если у вашего устройства доступны схема,  исходники и прошивки,  то поделитесь пожалуйста,  ссылкой

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Just now, C2000 said:

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

С чего такие выводы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 hours ago, C2000 said:

А что под линуксом даже не рассматривается, что CAN бывает в виде встроенного в проц. модуля?

Это что ж за процессор такой? Я работаю с интеловскими, там точно CAN отсутствует! Вот вчера дома файлопомойку на кубитраке поднимал, увидел там в конфигураторе CAN (возможно, его A20 поддерживает это). Но это — одноплатник, да и неизвестно еще, как с этим CAN'ом работать: если как с сетевой картой, то не нужно такое "счастье"! Я лучше свою 300-рублевую "примочку" в USB воткну и буду работать как с PL2303…

6 hours ago, bingo said:

Если у вашего устройства доступны схема,  исходники и прошивки,  то поделитесь пожалуйста,  ссылкой

На гитхабе же лежит, вот: https://github.com/eddyem/stm32samples/tree/master/F0-nolib/usbcan

И протокол простой, легко под canfestival портируется если вдруг захотите (мне это не нужно, я своим софтом работаю). Эмулирует PL2303, так что а) никаких проблем со всякими modemd и прочей бубунтовской дрянью не будет, да и файл устройства называется /dev/ttyUSBx (а не позорный /dev/ttyACMx); б) работает не только в линуксе, но и вообще без проблем в андроиде (бывает, использую лопатофон в качестве терминала) и форточках (мне это не нужно, но народ как-то просил).

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, Eddy_Em said:

...да и неизвестно еще, как с этим CAN'ом работать: если как с сетевой картой, то не нужно такое "счастье"! Я лучше свою 300-рублевую "примочку" в USB воткну и буду работать как с PL2303…

 

Не знаю как на Intel процессорах, но в микроконтроллерах CAN всегда (если есть) это такая же обычная периферия, как uart или spi.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

коллеги, давайте всё-таки в русле контекста раздела "предлагаю работу"

модератор

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...