Linux下I2C调试工具--for--Zynq MPSOC/Jetson Xavier

本文介绍了Linux下的I2C调试工具i2c-tools,包括工具的安装步骤和常用功能如i2cdetect检测设备、i2cdump读取数据、i2cget和i2cset设置数据,以及新版本的i2ctransfer扩展功能。
摘要由CSDN通过智能技术生成

Linux下I2C调试工具

1、简介

i2c-tools是一个专门调试i2c的工具,无需编写任何代码即可轻松调试I²C设备,可获取挂载的设备及设备地址,还可以在对应的设备指定寄存器设置值或者获取值等功能。i2c-tools有如下几个常用测试命令i2cdetect, i2cdump, i2cget, i2cset,i2ctransfer。

2、i2c-tools工具安装

2.1、Jetson xavier/orin下安装

sudo apt-get install libi2c-dev i2c-tools

2.2、Zynq MPSOC下安装
使用如下命令勾选i2c-tools工具:
使用petalinux 进入文件系统

petalinux-config -c rootfs

进入Filesystem Packages
在这里插入图片描述
进入base
在这里插入图片描述
进入i2c-tools
在这里插入图片描述
勾选i2c-tools工具
在这里插入图片描述
重新编译系统

petalinux build

3、i2c-tools工具使用
3.1、i2cdetect
功能:用于检测SOC设备上的i2c总线数量和挂载在i2c总线上的器件。
命令:i2cdetect -l
命令:i2cdetect -r -y 0 //检测i2c-0的挂载情况
3.2、i2cdump
功能:dump i2c设备中所有的数据。

i2cdump -f -y 0 0x1e b

用i2cdump查看挂载在i2c 0 总线上器件地址为0x1e的所有寄存器值
3.3、i2cget
功能:获取指定i2c设备中指定地址的数据.
命令:i2cget -f -y 0 0x1b 0x02 //显示I2C 0号总线上0x1b设备0x02寄存器地址,按字节读取
3.4、i2cset
功能:设置指定i2c设备中指定地址的数据。
命令:i2cget -f -y 0 0x1b 0x20 0x01 //设置I2C 0号总线上0x1b设备0x20寄存器地址的值为0x01
3.5、i2ctransfer
I2c-tool-4.0及之后的版本添加了12ctransfer命名。
功能:由于i2cget和i2cset只能读写i2c设备的寄存器地址小于0xff–8位寄存器地址。I2ctransfer可以设置寄存器地址为16位。
命令:i2ctransfer -y -f 1 w3@0x30 0x2a 0x02 0x30
//向i2c 1号总线0x30设备的0x2a02寄存器写0x30,w3:表示寄存器0x2a02和写入值0x30的长度为3字节。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Kevin的学习站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值