ESP32S 遇到的莫名其妙的重启,一定选择ESP32 Dev Module

2024-03-06 02:20

本文主要是介绍ESP32S 遇到的莫名其妙的重启,一定选择ESP32 Dev Module,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述
正常启动:
13:39:09.759 -> //正常启动
13:39:09.759 -> rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
13:39:09.806 -> configsip: 0, SPIWP:0xee
13:39:09.806 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
13:39:09.806 -> mode:DIO, clock div:1
13:39:09.806 -> load:0x3fff0030,len:1184
13:39:09.806 -> load:0x40078000,len:13260
13:39:09.806 -> load:0x40080400,len:3028
13:39:09.806 -> entry 0x400805e4
13:39:10.303 -> //正常启动
无故重启: 貌似任务栈数据溢出,以下提示
rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
或者
rst:0x8 (TG1WDT_SYS_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
看到资料:
任务栈数据溢出:
系统复位,出现rst:0x8 (TG1WDT_SYS_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT),原因是任务栈数据溢出,将任务栈大小配置为2048后,程序正常启动并运行。记得原来用STM32的时候,任务栈用不了这么大,可能原因是arduino代码比较吃内存,毕竟用的是别人写好的库,我测试的工程中用了别人写好的oled库,函数的嵌套和调用比较多导致。
原文链接:https://blog.csdn.net/r277167103/article/details/135391850

更改了: 不管用,还是无故重启C:\Users\Administrator\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.11目录下所有文件中的配置
#define CONFIG_ARDUINO_LOOP_STACK_SIZE 8192 //原始
#define CONFIG_ARDUINO_LOOP_STACK_SIZE 32768 //改后

#define CONFIG_ESP_COREDUMP_STACK_SIZE 1024 //原始
#define CONFIG_ESP_COREDUMP_STACK_SIZE 2048 //改后

#define CONFIG_FREERTOS_IDLE_TASK_STACKSIZE 1024 //原始
#define CONFIG_FREERTOS_IDLE_TASK_STACKSIZE 2048 //改后

电源问题: 经排查,也不行
如果你不用 wifi & ble 会如何,看你 log 最后出问题的时候在做 rf cal,需要比较大的电流。
另外,每次重启都是 rst:0x8 (TG1WDT_SYS_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)?
解决方法,LOD芯片放到MCU附件 就可以了,可能是电源线太细了

最终解决方法:
必须选这个ESP32 Dev Module,不能选Node32s和NodeMCU-32S,否则会莫名其妙的重启
在这里插入图片描述

这篇关于ESP32S 遇到的莫名其妙的重启,一定选择ESP32 Dev Module的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/778573

相关文章

Python中ModuleNotFoundError: No module named ‘timm’的错误解决

《Python中ModuleNotFoundError:Nomodulenamed‘timm’的错误解决》本文主要介绍了Python中ModuleNotFoundError:Nomodulen... 目录一、引言二、错误原因分析三、解决办法1.安装timm模块2. 检查python环境3. 解决安装路径问题

Jackson库进行JSON 序列化时遇到了无限递归(Infinite Recursion)的问题及解决方案

《Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursion)的问题及解决方案》使用Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursi... 目录解决方案‌1. 使用 @jsonIgnore 忽略一个方向的引用2. 使用 @JsonManagedR

基于Python实现多语言朗读与单词选择测验

《基于Python实现多语言朗读与单词选择测验》在数字化教育日益普及的今天,开发一款能够支持多语言朗读和单词选择测验的程序,对于语言学习者来说无疑是一个巨大的福音,下面我们就来用Python实现一个这... 目录一、项目概述二、环境准备三、实现朗读功能四、实现单词选择测验五、创建图形用户界面六、运行程序七、

前端知识点之Javascript选择输入框confirm用法

《前端知识点之Javascript选择输入框confirm用法》:本文主要介绍JavaScript中的confirm方法的基本用法、功能特点、注意事项及常见用途,文中通过代码介绍的非常详细,对大家... 目录1. 基本用法2. 功能特点①阻塞行为:confirm 对话框会阻塞脚本的执行,直到用户作出选择。②

在MySQL执行UPDATE语句时遇到的错误1175的解决方案

《在MySQL执行UPDATE语句时遇到的错误1175的解决方案》MySQL安全更新模式(SafeUpdateMode)限制了UPDATE和DELETE操作,要求使用WHERE子句时必须基于主键或索引... mysql 中遇到的 Error Code: 1175 是由于启用了 安全更新模式(Safe Upd

解决JavaWeb-file.isDirectory()遇到的坑问题

《解决JavaWeb-file.isDirectory()遇到的坑问题》JavaWeb开发中,使用`file.isDirectory()`判断路径是否为文件夹时,需要特别注意:该方法只能判断已存在的文... 目录Jahttp://www.chinasem.cnvaWeb-file.isDirectory()遇

nginx-rtmp-module模块实现视频点播的示例代码

《nginx-rtmp-module模块实现视频点播的示例代码》本文主要介绍了nginx-rtmp-module模块实现视频点播,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习... 目录预置条件Nginx点播基本配置点播远程文件指定多个播放位置参考预置条件配置点播服务器 192.

nginx-rtmp-module构建流媒体直播服务器实战指南

《nginx-rtmp-module构建流媒体直播服务器实战指南》本文主要介绍了nginx-rtmp-module构建流媒体直播服务器实战指南,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. RTMP协议介绍与应用RTMP协议的原理RTMP协议的应用RTMP与现代流媒体技术的关系2

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用