海思3559A平台 I2C 16bit reg&addr 读写

前言

一般寄存器都是8位地址的,i2ctools 里的i2cdump i2cget i2cset,也是设置读取8位的地址,

但这次调试的寄存器是16位地址,i2cdump i2cget i2cset 都用不了,这时候就要用到i2ctransfer 了,

I2C-Tools 4.0增加了i2ctransfer命令,可以对i2c设备指定定长度进行读写操作

I2C-Tools 4.0下载

https://i2c.wiki.kernel.org/index.php/I2C_Tools

直接git下载:

    git clone git://git.kernel.org/pub/scm/utils/i2c-tools/i2c-tools.git

交叉编译

默认是gcc编译的;

在海思平台用,需要修改为海思平台的交叉工具链;

海思平台交叉工具链为 aarch64-himix100-linux-

编译: make

i2ctransfer运行

由于是动态编译,所以需要将依赖的动态库拷贝到 /lib64 目录下

运行成功

也可以直接静态编译

静态编译

  加入USE_STATIC_LIB=1参数,如下:

  make -j4 USE_STATIC_LIB=1

i2ctransfer使用方法

猜你喜欢

转载自blog.csdn.net/jzwjzw19900922/article/details/105860069
今日推荐