一. 前言
前面调试一个I2C设备,用到了i2c-tools,觉得是一个调试I2C不错的工具,本文对i2c-tools的基本用法做一些介绍。i2c-tools是一些控制2C接口工具的集合,其中包括i2cdetect,i2cdump,i2cget,i2cset和i2ctransfer,其中i2cdetect是用来探测I2C总线上有哪些从设备的,i2cdump是用来输出某个从设备的各个数据地址的内容的,i2cget是用来获取某个从设备的某个数据地址的内容的,i2cset则是用来设置某个从设备的某个数据地址的内容的,i2ctransfer则兼具读和写的功能。本文主要介绍i2cdetect,i2cget,i2cset和i2cdump的功能和使用方法。本文使用的I2C外设是AT24C02。
二. 命令的使用方法
1. i2cdetect
i2cdetect的帮助信息如下:
Usage: i2cdetect [-y] [-a] [-q|-r] I2CBUS [FIRST LAST]
i2cdetect -F I2CBUS
i2cdetect -l
I2CBUS is an integer or an I2C bus name
If provided, FIRST and LAST limit the probing range.
i2cdetect是用来探测I2C总线上有哪些从设备的。探测的原理:根据I2C协议,当主设备发送从设备的地址(由从设备的A0,A1和A2决定)后,从设备需要回一个ACK,此时,主设备就知道了该地址的从设备存在,所以,I2C主设备依次发送从设备地址为0x03 - 0x77的地址数据,
root@OpenWrt:/# i2cdetect -y 0
0 1 2 3 4 5 6