i2c读写eeprom代码
时间: 2024-09-09 17:04:37 浏览: 59
I2C(Inter-Integrated Circuit)是用于连接微控制器和其他简单外围设备的一种串行通信协议。以下是使用Python的SMBus库(适用于Linux和macOS)读写EEPROM(如AT24XX系列)的基本示例代码:
```python
import smbus
# 初始化I2C总线
bus = smbus.SMBus(1) # 如果你在主板上只有一个I2C端口,通常选择1
# I2C地址,根据你的EEPROM型号替换
EEPROM_ADDRESS = 0x50
# 打开EEPROM设备
device = bus.read_i2c_block_data(EEPROM_ADDRESS, 0)
def read_eeprom(address):
byte_array = bus.read_byte_data(EEPROM_ADDRESS, address)
return byte_array
def write_eeprom(address, value):
bus.write_byte_data(EEPROM_ADDRESS, address, value)
# 示例读取某个位置的数据
data = read_eeprom(1) # 从地址1开始读取
print("Read data from address 1:", hex(data))
# 示例写入数据
write_eeprom(5, 0x42) # 将0x42写入地址5
print("Wrote 0x42 to address 5.")
# 关闭I2C
bus.close()
阅读全文