本文档介绍的是迅为iMX6开发板在Ubuntu 系统环境下 iTOP-iMX6 CAN 实验调试步骤。给用户提供了
“can_libs.rar”、“can_tools.zip”和“iTOP-iMX6-Ubuntu-CAN_V1.0.rar”压缩包,分
别是 can 工具需要的库文件、can 工具二进制文件以及 can 实验 C 程序源码。
CAN 是 Controller Area Network 的缩写,是 ISO 国际标准化的串行通信协议。近年
来,其所具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统
和环境温度恶劣、电磁辐射强和振动大的工业环境。
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 盘挂载到开发板上(参考使用手册 11.3.3 小节),如下图所示。
拷贝工具软件到/bin 目录下,使用命令“cp -r can_tools/* /sbin/”,另外使用命令
“chmod 777 /sbin/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”解除挂载,如下图所示。
在一块开发板上,先使用命令“./can_test -r can0”,运行接收程序,如下图所示。
然后在另一块开发板上,先使用命令“./can_test -s can0”,运行发送程序,如下图所
示。
第一个开发板会接收到发来的信息,如下图。