i2cdetect
命令是一个Linux下的I2C工具,用于扫描I2C总线并列出存在的I2C设备地址。它通常安装在i2c-tools
软件包中。
i2cdetect
命令支持两种模式:-l
模式和-y
模式。
-l
模式
i2cdetect -l
命令用于列出系统中所有可用的I2C总线。在Linux系统中,I2C总线通常表示为/dev/i2c-*
设备节点,其中*
是数字,表示I2C总线的编号。该命令会列出每个I2C总线的编号和适配器类型。
-y
模式
i2cdetect -y
命令用于扫描指定的I2C总线,列出该总线上存在的有效I2C设备地址。其中-y
选项表示以非交互方式运行I2C探测命令。该命令会输出一个矩阵,其中每个数字代表一个I2C地址。如果I2C设备在该地址上存在,则对应的数字会被标记为
UU
,否则标记为--
。
总之,i2cdetect
命令非常有用,可以帮助我们快速扫描I2C总线,并列出所有存在的I2C设备地址,方便进行后续的I2C设备操作和调试。
[1] 用i2cdetect检测有几组i2c总线在系统上
i2cdetect -l
命令用于列出系统中所有可用的I2C总线。在Linux系统中,I2C总线通常表示为/dev/i2c-*
设备节点,其中*
是数字,表示I2C总线的编号。
i2cdetect -l
命令会列出每个I2C总线的编号和适配器类型,例如:
i2c-0 i2c msm_i2c.0 I2C adapter
i2c-1 i2c msm_i2c.1 I2C adapter
i2c-2 i2c QUP I2C adapter with a QUP v1.1 compatible HW blockqm_i2c.2 I2C adapter
在这个例子中,系统中有三个I2C总线,分别是i2c-0
、i2c-1
和i2c-2
,对应的适配器类型分别是msm_i2c.0
、msm_i2c.1
和qm_i2c.2
。
总之,i2cdetect -l
命令可以帮助我们查看系统中可用的I2C总线和对应的适配器类型,便于后续的I2C设备操作和调试。
[2] 查询i2c总线上挂接的设备及设备的地址
i2cdetect -y
<number>
i2cdetect -y 0
命令用于扫描I2C总线/dev/i2c-0
,并列出所有在该总线上存在的有效I2C设备地址。其中-y
选项表示以非交互方式运行I2C探测命令。
该命令会输出一个矩阵,其中每个数字代表一个I2C地址。如果I2C设备在该地址上存在,则对应的数字会被标记为UU
,否则标记为--
。
例如,以下是i2cdetect -y 0
命令执行后的输出结果:
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- 48 -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
在这个例子中,可以看到I2C总线/dev/i2c-0
上存在一个有效的I2C设备,其地址为0x48
。
总之,i2cdetect -y 0
命令可以帮助我们扫描I2C总线,查找I2C设备地址,便于后续的I2C设备操作和调试。