ESP32、ESP8266
ESP32-S2、ESP32-S3、ESP32-C3
-
shaoziyang
- 帖子: 3967
- 注册时间: 2019年 10月 21日 13:48
#1
帖子
由 shaoziyang »
在新版本的ESP系列固件中(包括了ESP8266和ESP32),可以访问rtc memory了。如:
Code: Select all
import machine
rtc = machine.RTC()
rtc.memory('12345')
rtc.memory()
-
shaoziyang
- 帖子: 3967
- 注册时间: 2019年 10月 21日 13:48
#2
帖子
由 shaoziyang »
在目前固件版本中,rtc.memory()是一个bytes类型对象,可以对rtc.memory整体写入,但是不能单独写入某个位置,而读取是可以一次读取或读取某个位置。
如:
代码: 全选
rtc.memory('12345')
rtc.memory('abc')
rtc.memory(b'\x0012345')
print(rtc.memory())
print(rtc.memory()[0], rtc.memory()[1])
rtc.memory最大大小,对于ESP8266是492,而ESP32是2048。
国外网友的一个测试代码
Code: Select all
import machine
rtc = machine.RTC()
i = 1
while True:
try:
rtc.memory(b'X' * i)
except Exception as e:
print('Error:', e)
print(len(rtc.memory()), 'Bytes')
print(rtc.memory())
break
else:
i += 1
-
shaoziyang
- 帖子: 3967
- 注册时间: 2019年 10月 21日 13:48
#3
帖子
由 shaoziyang »
上电复位时,rtc.memory内容会清零,缓冲区长度变为0。但是在软复位时(包括deepsleep),rtc.memory的内容不会发生变化,也就是不会被初始化,利用这个特性,可以将一些特定数据写入到rtc.memory。
目前rtc.memory功能还待完善,暂时也没有文档。
-
-
- 13回复总数
- 1274 阅读次数
- 最新文章 由 czfx
2023年 6月 10日 06:11
-
-
- 1回复总数
- 542 阅读次数
- 最新文章 由 wangyoufeng8889
2023年 6月 9日 10:26
-
-
- 1回复总数
- 262 阅读次数
- 最新文章 由 shaoziyang
2023年 6月 9日 22:37