ESP8266开发板运行死循环main.py无法连接 有什么解决办法?
解决方案
方法1:硬复位+键盘中断进入REPL
- 保持ESP8266通过USB连接到Windows 10设备,从设备管理器的「端口(COM和LPT)」分类中确认开发板对应的串口号,记为
COMx - 打开串口终端工具(PuTTY、Thonny内置串口终端均可),连接对应串口
- 按下开发板上的
RST复位键,在复位后1秒内按下终端的Ctrl+C,触发键盘中断终止正在运行的死循环main.py,进入REPL交互模式 - 进入REPL后直接用ampy删除错误的main.py即可,命令如下:
ampy --port COMx rm main.py - 操作完成后即可正常推送新的项目代码
方法2:用Thonny IDE强制中断
- 下载安装Thonny IDE,打开后依次点击「运行」-「选择解释器」,选中
MicroPython(ESP8266),配置对应串口号后保存 - 点击界面顶部的红色「停止」按钮,IDE会自动发送多次中断指令,大概率可以直接终止死循环进入REPL
- 进入REPL后可以直接在IDE左侧的板端文件管理器中删除错误的main.py文件
方法3:擦除Flash重刷固件
如果上述中断方法均失效,可以直接重刷MicroPython固件清空所有板端数据:
- 下载对应ESP8266型号的MicroPython固件到本地
- 用esptool工具擦除板载Flash,命令如下:
esptool.py --port COMx erase_flash - 擦除完成后重新刷入固件:
esptool.py --port COMx --baud 460800 write_flash --flash_size=detect 0 固件文件名.bin - 刷入完成后开发板恢复初始状态,所有原有代码都会被清除,可正常使用
内容的提问来源于stack exchange,提问作者Willyd
相关产品推荐
相关产品推荐

