Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $YECBGYFECGEAFWHA as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2

Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $BBWFDDBHHYHDXXAB as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2
在MicroPython中使用machine.deepsleep()后出现rst:0x5 (DEEPSLEEP_RESET)和boot:0x13 (SPI_FAST_FLASH_BOOT)的原因是什么?如何解决?_创想鸟

在MicroPython中使用machine.deepsleep()后出现rst:0x5 (DEEPSLEEP_RESET)和boot:0x13 (SPI_FAST_FLASH_BOOT)的原因是什么?如何解决?

在micropython中使用machine.deepsleep()函数后出现的rst:0x5 (deepsleep_reset)和boot:0x13 (spi_fast_flash_boot)提示信息的原因和解决方法如下:

在MicroPython中使用machine.deepsleep()后出现rst:0x5 (DEEPSLEEP_RESET)和boot:0x13 (SPI_FAST_FLASH_BOOT)的原因是什么?如何解决?

关于machine.deepsleep()后出现的rst:0x5 (DEEPSLEEP_RESET)和boot:0x13 (SPI_FAST_FLASH_BOOT)问题

在使用MicroPython进行编程时,常常会遇到与硬件相关的特殊情况。最近,有用户在使用machine.deepsleep()函数后,设备在唤醒时出现了rst:0x5 (DEEPSLEEP_RESET)和boot:0x13 (SPI_FAST_FLASH_BOOT)的提示信息,并对其含义和解决方法感到困惑。

以下是用户提供的代码示例:

import machineimport time

初始化RTC用于在深度睡眠间保存数据

rtc = machine.RTC()

立即学习Python免费学习笔记(深入)”;

定义任务函数

def task1():print("执行任务1")

这里添加任务1的具体操作

# 比如读取传感器、控制GPIO等

def task2():print("执行任务2")

这里添加任务2的具体操作

# 比如发送数据、改变状态等

检查唤醒原因

if machine.reset_cause() == machine.DEEPSLEEP_RESET:

从RTC内存读取状态

state = rtc.memory()print("从深度睡眠唤醒,之前状态:", state)if state == b'x00':    task1()    new_state = b'x01'else:    task2()    new_state = b'x00'

else:

首次启动时执行任务1

print("冷启动")task1()new_state = b'x01'

保存新状态到RTC内存

rtc.memory(new_state)

设置深度睡眠30秒(30000毫秒)后唤醒

print("进入深度睡眠...")machine.deepsleep(30000)

运行结果如下:

冷启动执行任务1进入深度睡眠...ets Jul 29 2019 12:21:46

rst:0x5 (DEEPSLEEP_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)configsip: 0, SPIWP:0xeeclk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00mode:DIO, clock div:2load:0x3fff0030,len:4540ho 0 tail 12 room 4load:0x40078000,len:12344ho 0 tail 12 room 4load:0x40080400,len:4124entry 0x40080680MicroPython v1.19.1 on 2022-06-18; ESP32 module with ESP32Type "help()" for more information.

用户在遇到这个问题后,经过一番排查,发现问题的原因是没有将代码上传到ESP32模块上。原来,rst:0x5 (DEEPSLEEP_RESET)表示设备是从深度睡眠状态中唤醒的,而boot:0x13 (SPI_FAST_FLASH_BOOT)表示设备正在使用SPI快速闪存启动模式。这两个信息本身并不表示有问题,而是正常的设备状态信息。

因此,解决这个问题的方法非常简单:确保将代码正确上传到ESP32模块上。用户在确认代码已经上传到设备后,设备能够正常进入深度睡眠并在设定时间后唤醒,运行相应的任务函数。

以上就是在MicroPython中使用machine.deepsleep()后出现rst:0x5 (DEEPSLEEP_RESET)和boot:0x13 (SPI_FAST_FLASH_BOOT)的原因是什么?如何解决?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1360776.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
ESP32设备在使用machine.deepsleep()函数后,为什么会出现rst:0x5 (DEEPSLEEP_RESET)和boot:0x13 (SPI_FAST_FLASH_BOOT)的信息?
上一篇 2025年12月13日 23:57:56
如何在Python中避免内存泄漏?
下一篇 2025年12月13日 23:58:10

相关推荐

发表回复

登录后才能评论
关注微信