ARM技术论坛
直播中

平常心0

8年用户 331经验值
私信 关注
[经验]

迅为i.MX6Q开发板Ubuntu20.04 Can通信

开发平台:i.MX6Q开发板



1 硬件连接
作者测试 can,使用的是两块 iTOP-iMX6 开发板。板子是 can 的+连接+,-连接-,如下图所示。


2 canconfig 工具配置
首先配置工具和库文件,将压缩包“can_libs.rar”、“can_tools.zip”和 “can_libs_more.zip”
解压得到“can_tools”、“can_libs”以及“”can_libs_more,拷贝解压出来的文件到 tf 卡或者 u 盘, 如下图所示(下图中缺少can_libs_more)。




然后将 tf 卡或者 u
盘挂载到开发板上(参考使用手册40章节Linux系统设置自动挂载U盘或TF卡),
如下图所示。



拷贝工具软件到/bin
目录下,使用命令“cp -r can_tools/* /***in/”,另外使用命令“chmod 777
/***in/can*”将/bin 下的 can*文件权限修改为 777,。
使用命令“cp
-r can_libs/* /lib/”拷贝库文件到/lib 目录下,如下图所示。


使用命令“cd
/lib”进入到/lib 目录,使用“ln -s libsocketcan.so.2.2.1 libsocketcan.so”和
“ln -s libsocketcan.so.2.2.1 libsocketcan.so.2”命令,生成链接文件,如下图所示。


然后将“can_libs_more”中的三个文件也拷贝到“/lib”下,Ubuntu 和其它系统主要区别就是缺少
这三个库文件,其它一模一样。最后需要使用 chmod 命令,将所有新添加库的权限修改为 777。
3 测试软件的使用
将“iTOP-iMX6-Ubuntu-CAN_V1.0.rar”解压后的目录的可执行文件“can_test”拷贝到 U 盘上,如
下图所示。


然后使用命令“mount /dev/udisk /mnt/disk/”将
u 盘挂载到开发板上,使用命令
“cp -r /mnt/disk/can_test /topeet/”将可执行文件拷贝到“/topeet”目录下,使用命令
“umount /dev/udisk”解除挂载,如下图所示。


以同样的方式将可执行文件拷贝到另一个开发板上,使用命令“cd /topeet”进入“/topeet”目录下,
我们可以使用命令“ls”查看到“can_test”,如下图所示。



在一块开发板上,先使用命令“./can_test -r can0”,运行接收程序,如下图所示。


然后在另一块开发板上,先使用命令“./can_test -s can0”,运行发送程序,如下图所示。



第一个开发板会接收到发来的信息,如下图。



更多回帖

发帖
×
20
完善资料,
赚取积分