在uboot命令行下输入i2c并回车,会打印出i2c所有命令的使用方法:
比如i2c dev会打印出目前挂载的i2c设备:
i2c probe是对i2c设备地址的寻找:
i2c md命令是从i2c设备读取数据,在这里本人用的是beaglebone black,然后就选择EEPROM这个内置的i2c设备进行读取
要注意的是md命令的参数,第一个是chip address ,eeprom设备一般是0x50,因此完整命令为:
i2c md 0x50 0.0
结果如下:
和预想的数据一样,打印出了eeprom的头信息。
i2c mm命令是向i2c设备写数据,命令格式类似于md。不详述。
接下来说说EEPROM命令:
同样在uboot命令行下输入eeprom并回车:
eeprom只有两个命令。read和write。
read命令的格式中devaddr表示eeprom的地址,也就是0x50,而后一个参数addr则是表示将read的数据存在这个地址中,off表示偏移量,cnt表示读取多少个字节的数据。
比如输入如下命令:
eeprom read 0x50 0x87000000 0 8
打印信息如下:
表示将数据读入了地址0x87000000,然后利用md命令读取0x87000000的数据:
可以看出数据为ee3355aa,读取正确。