首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >FD能否支持SocketCAN上的虚拟CAN (vcan)

FD能否支持SocketCAN上的虚拟CAN (vcan)
EN

Stack Overflow用户
提问于 2016-04-12 16:52:30
回答 2查看 5.3K关注 0票数 3

我一直在使用SocketCAN,尤其是Virtual CAN vcan已经有相当长一段时间了。然而,到目前为止,我从未使用过CAN FD (灵活数据速率)。

好吧,我今天早上用can-utils试过了:

代码语言:javascript
运行
复制
cansend vcan0 123##122

但是,我得到的响应是"CAN接口不支持CAN FD“。vcan接口是使用以下终端命令创建的:

代码语言:javascript
运行
复制
ip link add dev vcan0 type vcan
ip link set up vcan0

有没有人知道vcan是否支持FD?如果是,如何设置支持CAN FD的vcan接口?

系统配置: VirtualBox上的Ubuntu 14.04.1。

提前谢谢你,奶奶

EN

回答 2

Stack Overflow用户

发布于 2016-04-13 14:25:57

我的一个同事找到了一个解决方案:

代码语言:javascript
运行
复制
ip link add dev vcan0 type vcan
ip link set vcan0 mtu 72

选项"mtu 72“为CAN FD设置正确的最大传输大小。之后,vcan接受CAN FD消息。

最低工资

票数 6
EN

Stack Overflow用户

发布于 2018-07-17 16:10:07

太棒了,奶奶!

它是一种护身符。以下是我按照你的建议所做的。请注意,命令是通用的,并且有一个我不想讨论的环境准备!

要在Linux内核下设置socketCAN框架(我使用的是4.17.2),请以根用户身份:

代码语言:javascript
运行
复制
lsmod | grep can
modprobe can
modprobe can_raw
modprobe can-bcm
modprobe can-dev
modprobe can-gw
modprobe vcan
lsmod | grep can

要设置socketCAN-Fd框架,应执行以下操作(也以root身份):

代码语言:javascript
运行
复制
ip link add dev vcan0 type vcan
ip link set vcan0 mtu 72
ip link set dev vcan0 up
ifconfig

需要使用can-utils包来测试socketCAN-Fd框架。此外,还需要以下内容:https://github.com/mguentner/cannelloni

而且,一切都像瑞士时钟一样工作!:-)

在xmit方面: cangen -f vcan0 -v vcan0

2C3##0.25.5A.FF.1E.DC.BD.CB.42.25.5A.FF.1E.DC.BD.CB.42.25.5A.FF.1E.DC.BD.CB.42.25.5A.FF.1E.DC.BD.CB.42.25.5A.FF.1E.DC.BD.CB.42.25.5A.FF.1E.DC.BD.CB.42.25.5A.FF.1E.DC.BD.CB.42.25.5A.FF.1E.DC.BD.CB.42

在接收端: candump vcan0

vcan0 2C3 64 25 5A FF 1E DC BD CB 42 25 5A FF 1E DC BD CB 42

太棒了!非常感谢!

没有人

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36568167

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档