千家信息网

Linux ARM IIC I2C EEPROM读写操作是怎么的

发表于:2025-01-27 作者:千家信息网编辑
千家信息网最后更新 2025年01月27日,本篇文章给大家分享的是有关Linux ARM IIC I2C EEPROM读写操作是怎么的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
千家信息网最后更新 2025年01月27日Linux ARM IIC I2C EEPROM读写操作是怎么的

本篇文章给大家分享的是有关Linux ARM IIC I2C EEPROM读写操作是怎么的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

检测有几组i2c总线

root@beaglebone:~# i2cdetect -li2c-0   i2c          OMAP I2C adapter                  I2C adapteri2c-1   i2c          OMAP I2C adapter                  I2C adapterroot@beaglebone:~#

检查每个总线上的设备在线状态:-y表示yes,0表示/dev/i2c-0

root@beaglebone:~# i2cdetect  -y -r 0     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- UU -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --                         root@beaglebone:~# UU表示0x50这个地址上有设备正在使用

查看EEPROM里的内容,下面的0表示/dev/i2c-0总线,0x50是EEPROM的地址

root@beaglebone:~# i2cdump -f -y 0 0x50No size specified (using byte-data access)     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff    ................root@beaglebone:~#

获取/设置i2C0-0总线的0x24设备的第01字节的数据

root@beaglebone:~# i2cget -f -y 0 0x24 01   root@beaglebone:~# i2cset -f -y 0 0x24 01 0xaa   #掉电后,写入的数据无效,待调查。。。root@beaglebone:~# i2cget -f -y 0 0x24 01

BeagleBone Black 从文件读取写入EEPROM,永久生效

root@beaglebone:~# dd if=eeprom.bin of=/sys/bus/i2c/devices/0-0050/eeprom #大约要等5分钟

以上就是Linux ARM IIC I2C EEPROM读写操作是怎么的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

0