声明:本文是博主在调试 TX2 使用 CAN 接收 IMU 数据过程中做的笔记,便于后期复现。
1.1、使用 ifconfig -a 查看 TX2 是否加载了 CAN 设备
ifconfig -a

1.2、显示设备没有加载 CAN 设备,则需要手动加载 CAN 设备;使用如下命令加载:
cd /lib/modules/4.4.38-tegra/kernel/net/can

sudo insmod can.ko
sudo insmod can-raw.ko
sudo insmod can-gw.ko
sudo insmod can-bcm.ko

1.3、在切换到drivers/net/can目录下,使用如下命令:
cd /lib/modules/4.4.38-tegra/kernel/drivers/net/can
sudo insmod can-dev.ko
sudo insmod slcan.ko
sudo insmod vcan.ko
1.4、最后切换到 mttcan/native目录下;使用如下命令:
cd /lib/modules/4.4.38-tegra/t18x/drivers/net/can/mttcan/native
sudo insmod mttcan.ko

1.5、再次使用 ifconfig -a 查看 CAN设备是否加载成功

可以看到 已经加载成功了CAN0 和 CAN1;
2.1、使用CAN0 接收 IMU传输的数据,配置CAN0,波特率为:250000
// 1.先关闭CAN使能
sudo ip link can0 down
// 2.设置比特率
sudo ip link can0 type can bitrate 250000
// 3. 打印CAN 详细信息
ip -details link show can0
// 4.使能CAN
ip link set can0 up
// 5.接收CAN0 发送的帧数据
candump can0

2.2、使用 CAN 卡进行收发测试;CAN接收数据命令:
candump can0
2.3、使用 USB-CAN TOOL 发送报文

2.4、TX2 端数据接收显示:

2.5、TX2 发送数据:
//格式为:
cansend can0 ID#报文.报文.....
//如:
cansend can0 234#01.01.01.02.23.03.04.05

2.6、USB-CAN TOOL 端数据接收:

2.7、TX2 接收 IMU 数据

参考资料:
博文中的资料已经放在下面公众号里面,可以关注公众号:Kevin的学习站,创作不易,但您的点赞、关注、收藏就是对我最大的鼓励!
