树莓派pico入坑笔记,at24c256使用

关于树莓派pico和circuitpython的更多玩法,请看树莓派pico专栏

使用基于circuitpython8.x的树莓派pico通过iic读写at24c256模块

at24c256,8位非易失存储器,断电后内容不丢失,大小256Kbit=32KB,地址范围0~32767,通过iic进行通信,支持地址通过引脚选择,用来拓展多片存储,本文使用全部置零,支持随机/页写入,但是页写入需要考虑页的大小和地址,违背方便的初衷,故不作展开

使用的库adafruit_24lc32,包含在官方拓展库里,是官方为at24c32编写的库,默认支持大小32Kbit=4KB,但兼容at24cxx系列,只需要在使用时显式声明大小即可

使用样例

python 复制代码
import board
import busio
import adafruit_24lc32

i2c = busio.I2C(board.GP5,board.GP4)
eeprom = adafruit_24lc32.EEPROM_I2C(i2c,max_size=32768)

print("length: {}".format(len(eeprom)))

eeprom[0] = 4
print(eeprom[0])

data=[1,2,3,4]
eeprom[0:5] = data[0:5]
print(eeprom[0])

注意在创建eeprom实例时要显式声明max_size,即存储容量,以字节为单位

支持以切片的方式操作,[]内部即为操作的地址,注意单地址的存储空间为8位,所以不要输入0~255以外范围的数据

相关推荐
半壶清水9 分钟前
[软考网规考点笔记]-局域网之以太网标准
网络·笔记·网络协议·考试
忙什么果30 分钟前
transformer学习笔记2
笔记·学习·transformer
ZhiqianXia35 分钟前
Gem5 学习笔记(2) : Gem5 建模要点与基本思路
笔记·学习
_李小白1 小时前
【OSG学习笔记】Day 25: OSG 设计架构解析
笔记·学习·架构
后藤十八里1 小时前
维普期刊逆向笔记
javascript·笔记·js逆向
风中的小熊生气1 小时前
MQ 学习笔记
笔记·学习
elseif1232 小时前
【Markdown】指南(上)
linux·开发语言·前端·javascript·c++·笔记
深蓝海拓3 小时前
基于QtPy (PySide6) 的PLC-HMI工程项目(二)系统规划
笔记·python·qt·学习·plc
鱼鳞_3 小时前
Java学习笔记_Day20(二叉树)
java·笔记·学习
卖报的大地主4 小时前
Learn Claude Code Agent 开发 | 8、后台异步执行:慢操作不阻塞主工作流
人工智能·笔记