站长
发布于 2023-10-27 / 165 阅读 / 0 评论 / 0 点赞

MicroPython wifi联网实现

网络连接功能实现

# 导包
import network
import utime

# 设置你的Wi-Fi SSID和密码
ssid = '你的wifi名称'
password = 'wifi密码'

def connect_and_sync_time():
    sta_if = network.WLAN(network.STA_IF)
    if not sta_if.isconnected():
        print("Connecting to Wi-Fi...")
        sta_if.active(True)
        sta_if.connect(ssid, password)
        while not sta_if.isconnected():
        	utime.sleep(1)

        print("Wi-Fi connected!")

踩坑笔记

在用esp32模块代码跑到sta_if.connect(ssid, password)时容易遇到wifi内部错误的问题(如图)

解决方法:通过在sta_if.active(True)前面加上sta_if.active(False),先关闭再打开可以避免这个问题

        sta_if.active(False)
        sta_if.active(True)

如果还是不行,得使用软重启命令,重启单片机

import machine
print("Rebooting ESP32...")
machine.reset()  # 执行软重启