
Arduino ESP8266 EspSaveCrash-master库具备重启和定时重启功能。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
ESP8266提供了两种不同的重启机制,具体包括ESP.reset()和ESP.restart()两种方法。在实际编码中,许多开发者倾向于使用ESP.reset()进行重启,然而,通常情况下,采用ESP.restart()更为理想。这两者之间的差异如下:ESP.reset() 是一种硬复位操作,这种重启方式可能导致某些寄存器值被重置为初始状态,从而导致重启后的程序出现异常。类似于计算机上的复位按钮,这种方式可能会丢失关键的寄存器数据。相反,ESP.restart() 通过向 ESP8266 的 SDK 发送特定的信号来触发重启,这是一种更为温和、更具控制性的“软”重启方式。因此,建议您在代码中将所有 ESP.reset() 调用替换为 ESP.restart()。
我曾遇到类似的问题,即在使用 GPOIO#0 时出现故障,但该方法并未提供任何解决方案。随后我进行了分析并得出结论:当 GPIO 被配置为输出时,硬件可能并未在软复位过程中将其恢复为输入状态。因此,复位操作的依赖性取决于 GPIO#0 的当前状态。为了解决这个问题,我采取了在重启之前将 GPIO#0 设置为高电平的措施,从而确保其能够正常运行。
此外,还需要注意以下几点:GPIO 15 低电平、GPIO 0 高电平以及 GPIO 2 高电平对于 ESP8266 程序运行模式至关重要;为了确保软件功能正常运作, 需要保证这些引脚的电平状态能够正确设置。同时, GPIO 15 低电平、GPIO 0 低电平以及 GPIO 2 高电平则适用于 ESP8266 的 UART 下载模式。
全部评论 (0)
还没有任何评论哟~


