linux --- i2c 工具的使用

Linux内核内置了I2C核心功能和常见平台的总线驱动,并通过/dev/i2c-*提供用户空间接口。用户无需编写底层驱动即可通过工具(如i2c-tools)或应用程序访问I2C设备。

检查 I2C 总线设备

首先确认系统是否检测到 I2C 总线及设备:

ls /dev/i2c-*          # 查看可用的 I2C 总线编号(如 /dev/i2c-0, /dev/i2c-1)
ls /sys/bus/i2c/devices/  # 查看连接的 I2C 设备地址

常用工具(i2c-tools)

i2cdetect

检测 I2C 总线上连接的设备地址:

i2cdetect -l              # 列出所有 I2C 总线
i2cdetect -y 1            # 扫描总线 1 上的设备地址(0x00~0x7F
i2cdetect -r -y 1 # 使用 SMBus 协议
  • 参数说明:
    • -y:禁用交互模式(直接输出结果)。
    • -F:显示总线支持的功能(如 SMBus 兼容性)。

i2cget

读取 I2C 设备的寄存器值

i2cset

设置 I2C 设备的寄存器值

i2cdump

导出 I2C 设备的所有寄存器值

i2cdump -f -y 0 0x10   # 总线0上的地址0x10设备

 

i2ctransfer

(较新工具)批量读写 I2C 数据

 

posted @ 2025-06-27 17:29  流水灯  阅读(334)  评论(0)    收藏  举报