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 数据

浙公网安备 33010602011771号