树莓派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以外范围的数据

相关推荐
浅念-17 小时前
C++ :类和对象(4)
c语言·开发语言·c++·经验分享·笔记·学习·算法
时代的凡人18 小时前
0213晨间笔记
笔记
AI视觉网奇18 小时前
ue 推送直播流 推流 linux 实战
笔记·学习·ue5
kkkkkkkkk_120118 小时前
【强化学习】09周博磊强化学习纲要学习笔记——第五课上
笔记·深度学习·学习·强化学习
玩c#的小杜同学18 小时前
工业级稳定性:如何利用生产者-消费者模型(BlockingCollection)解决串口/网口高频丢包问题?
笔记·学习·性能优化·c#·软件工程
laplace012318 小时前
deque+yield+next语法
人工智能·笔记·python·agent·rag
瑶光守护者18 小时前
【学习笔记】3GPP NR-NTN 移动性IRAT分析
笔记·学习·卫星通信·nr-ntn
杂鱼Tong19 小时前
29. Revit API:扩展存储(ExtensibleStorage)
笔记
saoys20 小时前
Opencv 学习笔记:图像卷积操作(锐化核实战 + 数据类型避坑)
笔记·opencv·学习
Coisinilove21 小时前
MATLAB学习笔记——第三章
笔记·学习·matlab