linux 移植 i2CTools

一、I2C-Tools介绍

  i2c-tools工具是一个专门用来调试 i2c 的。并且是开源的。
  它可以:
    1、检测有几组i2c总线在系统上。
    2、查看挂载在i2c上面设备寄存器的数值、
    3、可以读取挂载在i2c上面设备寄存器的数值。
    4、可以设置挂载在i2c上面设备寄存器的数值。

  i2ctool下载地址:https://mirrors.edge.kernel.org/pub/software/utils/i2c-tools/

二、基本环境

  开发环境:ubuntu16.04
  开发平台:imx6q
  i2c-tools 版本:i2c-tools-4.1.tar.xz

三、交叉编译

  3.1 解压 i2c-tools 压缩包,進入解壓后的目錄;

  3.2 编写脚本导入自己的交叉编译链去编译

    我的交叉编译链路径是:/home/Qt/i2cTools_makeTools/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/

#!/bin/sh

#填写你的工具链名称
BUILD_HOST=arm-none-linux-gnueabi 

#填写你的工具链的所在路径
BUILD_HOST_PATH=/home/Qt/i2cTools_makeTools/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/

#导入交叉编译链环境
export PATH=${PATH}:${BUILD_HOST_PATH}

#导入交叉编译链环境
CC=${BUILD_HOST}-gcc
LD=${BUILD_HOST}-ld

#开始编译
make

   3.4 编译结果

 四、移植到目标板

  4.1 跳转编译生成的i2ctool工具在 tools 目录 cd tools ,找到我们需要移植的5个可执行文件,如下图所示,把这5个文件拷贝到开发板的 /bin 目录下             

  4.2  i2ctool 库 到开发板,如果不移植 i2ctool 库 到开发板 ,那么在运行的时候就会报错:

    error while loading shared libraries: libi2c.so.0: cannot open shared object file: No such file or directory

      4.2.1 进入 lib 目录· cd lib 

      

       4.2.2 把 libi2c.so.0.1.1 拷贝到 开发板的 /usr/lib/ 目录下: cp libi2c.so.0.1.1 /usr/lib/

    4.2.3 把 libi2c.so.0.1.1 改名为 libi2c.so.0 :mv libi2c.so.0.1.1 libi2c.so.0

    4.2.4 把 libi2c.so.0 权限修改为 777:chmod 777 libi2c.so.0

五、移植完成

 

 参考:https://www.e-learn.cn/topic/3700535 、https://www.cnblogs.com/schips/p/porting_i2c-tools_on_arm_linux_with_usage.html 仅供参考学习使用

 

posted @ 2023-02-24 09:10  白菜没我白  阅读(271)  评论(0编辑  收藏  举报