Компьютер на linux с CAN контроллером к которому подключен датчик, как принимать и передавать данные?

Заранее прошу прощения за вероятно глупый вопрос, я к сожалению на низком уровне разработки почти не ориентируюсь, но проблему надо решать.
У меня есть компьютер на yocto линуксе собранный с поддержкой такой вот штуки - CANBUS: (Intel Corporation Platform Controller Hub EG20T Controller Area Network (CAN) Controller). Собственно у меня к этому контроллеру воткнут датчик, и надо программно посылать ему в соответствии с определенным протоколом данные и получать ответ. Собственно вопрос каким образом мне наладить программно обмен данными с датчиком через can контроллер? Вроде это как-то делают через сокеты, но как именно мне указать куда и к чему подключаться?
  • Вопрос задан
  • 508 просмотров
Решения вопроса 1
t_q_l
@t_q_l
Интересная личность
Посмотреть параметры контроллера:
dmesg | fgrep -i mcp

dmesg | fgrep -i can

Скорее всего устройство будет иметь имя вида can0

Отправить сообщение CAN со значением can_id =0x6B2 и значением поля данных 0x1111111112222222:
cansend can0 6B2#11.11.11.11.22.22.22.22

Получить статистику с шины CAN:
cat /proc/net/can/stats

Подробнее тут и там.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@unkier
software developer
elinux.org/CAN_Bus

создаешь сокет, указываешь с каким интерфейсом он работает, посылаешь/принимаешь данные. всё легко гуглится. в чем может быть проблема ?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы