

wifi连接模块代码已确认可正常运行,但Esp32在拔出UsB口,再与电脑重连时main.py文件无法正常自动运行,main.py里为wifi自连代码。
报错提示:KeyboardInterrupt:
MicroPython v1.19.1 on 2022-06-18; ESP32 module with ESP32
Type "help()" for more information.


wifi连接模块代码已确认可正常运行,但Esp32在拔出UsB口,再与电脑重连时main.py文件无法正常自动运行,main.py里为wifi自连代码。
报错提示:KeyboardInterrupt:
MicroPython v1.19.1 on 2022-06-18; ESP32 module with ESP32
Type "help()" for more information.
关注以下参考免费微信小程序:皆我百晓生 作答,并由阿齐Archie整理回复,若还有疑问可评论或留言。
从你提供的信息来看,你的ESP32设备在尝试运行main.py文件时遇到了KeyboardInterrupt异常。这通常是由于程序试图执行一个阻塞操作,但用户或其他程序通过键盘中断了该操作。然而,在这种情况下,这可能是由于wifi_connect函数在尝试连接Wi-Fi时被中断了。
为了解决这个问题,你可以尝试以下几个步骤:
wifi_connect函数可以正确处理网络连接失败的情况。如果连接失败,它应该重试而不是中断程序。main.py文件中是否有任何可能导致中断的代码。例如,如果使用了input()函数,用户输入可能会导致KeyboardInterrupt。main.py文件的开始处添加异常处理,捕获KeyboardInterrupt并忽略它,如下所示:try:
from common.wifi import wifi_connect
ssid = '你的SSID'
password = '你的密码'
wifi_connect(ssid, password)
except KeyboardInterrupt:
pass
如果问题仍然存在,你可能需要检查wifi_connect函数内部是否有任何可能导致中断的代码。确保所有网络操作都有足够的重试逻辑,并且在长时间等待响应时不会阻塞程序。
确保你的MicroPython固件是最新的,有时候固件的问题也可能导致类似的行为。
如果你的ESP32设备在连接到电脑时需要运行特定的代码,确保这些代码放在正确的位置。通常,ESP32设备的主程序应该放在main.py文件中,而启动脚本boot.py可以用来执行设备启动时需要运行的代码。
如果你已经尝试了上述步骤,但问题依然存在,请提供更多的代码和信息,以便我能进一步帮助你。