数码之家

 找回密码
 立即注册
搜索
查看: 936|回复: 5

[Arduino] ESP8266 nodemcu 无法从深度睡眠唤醒

[复制链接]
发表于 2024-1-28 11:34:50 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册

x
使用的是NodeMCU,已经按照要求把D0(GPIO16)和RST引脚使用导线相连接。
测试代码如下:

  1. void setup(){
  2.     Serial.begin(74880);
  3.     Serial.println("sleeping..");
  4.     delay(1000);
  5.     ESP.deepSleep(1e6);
  6. }

  7. void loop(){
  8. }
复制代码
串口打印数据如下:
  1. ets Jan  8 2013,rst cause:2, boot mode:(3,6)
  2. load 0x4010f000, len 3424, room 16
  3. tail 0
  4. chksum 0x2e
  5. load 0x3fff20b8, len 40, room 8
  6. tail 0
  7. chksum 0x2b
  8. csum 0x2b
  9. v00041de0
  10. ~ld
  11. rf cal sector: 1020
  12. freq trace enable 0
  13. rf[112] : 0�sleeping..
  14. ets Jan  8 2013,rst cause:2, boot mode:(3,6)
复制代码


第一次显示boot mode那一行是我手动按下了RST键。第二次是它自动唤醒发送低电平信号给RST后的启动信息。理论上想实现的功能是,被重置后从setup开始再次运行,然后等待1秒进入休眠,以此循环。实际情况是无法唤醒。
请问下这是什么原因?
初学ESP8266,有许多不懂的还望大佬们赐教。

 楼主| 发表于 2024-1-28 13:01:33 | 显示全部楼层
刚刚换了个搜索关键词,在英文搜索了一圈,发现https://github.com/esp8266/Arduino/issues/6007 这个issue和我的是同样情况。然后底下给出了解决方法,将一个电阻串联在SPI_MISO和3.3V之间,同时直接连接RST和D0引脚。
经过实验,方法可行,具体原因好像是批次问题?

打赏

参与人数 2家元 +36 收起 理由
litchiate + 6 同样问题,解决了。
wangbeng + 30 能给出解决问题答案的是好同志。.

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2024-1-28 21:18:55 | 显示全部楼层
没碰到,但是感谢给出答案。
回复 支持 反对

使用道具 举报

发表于 2024-2-5 16:50:16 | 显示全部楼层
去厂家论坛去贴会有结果
回复 支持 反对

使用道具 举报

发表于 2024-2-5 21:30:42 来自手机浏览器 | 显示全部楼层
XTX flash导致的问题?
哪家的产品名?以后避开。
回复 支持 反对

使用道具 举报

发表于 2024-2-13 23:27:31 | 显示全部楼层
vrxiaojie 发表于 2024-1-28 13:01
刚刚换了个搜索关键词,在英文搜索了一圈,发现https://github.com/esp8266/Arduino/issues/6007 这个issue ...

谢谢,正好遇到了一样的问题,deepSleep 要两次复位才能启动。
加上电阻之后就没问题了。
测试了deepSleep 状态下的电流约20uA。后面有空对比下其它正常的ESP8266的电流。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2024-4-27 19:23 , Processed in 0.109201 second(s), 11 queries , Redis On.

Powered by Discuz!

© 2006-2023 smzj.net

快速回复 返回顶部 返回列表