基于合宙esp32c3的micropython自动联网模块

本文介绍了作者将原本适用于ESP8266的Micropython自动联网模块重构为适应ESP32C3的过程。针对之前代码存在的错误和无储存文件报错问题进行了修复,同时提到连接失败可能需要重启的问题,欢迎有解决方案的读者分享。

之前给esp8266写的放到esp32c3上老报错,加上原代码太乱就重写了一下

之前无储存文件会报错,已修复

连接失败可能会报错,需要重启(有解决方法求告知)

萌新,求教

# wificonnect v2.0.esp32c3 by tdccj
from machine import Pin  # 加载运行库
import network
import time

try:
    with open('wifi.txt', 'r') as wifi:     #读取账号密码
        print('测试可用性')

except OSError:
    with open("wifi.txt", 'w') as wifi:     #如果没有储存文件则新建

        print('第一次启动')

        name = input('请输入wifi名:')
        pwd = input('请输入wifi密码:')

        wifi.write(name)
        wifi.write('\n')
        wifi.write(pwd)

print('开始读取账号密码')
with open('wifi.txt', 'r') as wifi:
    name = wifi.readline()
    name = name.strip('\n')
    pwd = wifi.readline()

print(name)
print(pwd)

wlan = network.WLAN(network.STA_IF)    #启用终端模式
wlan.active(True)       #一定要有这个!!!不然connect不工作(8266不一定)

light = Pin(12, Pin.OUT)
light.value(1)

print("wifi连接中")
wlan.connect(name, pwd)      #连接wifi

time.sleep(0.2)
STime = time.time()

while not wlan.isconnected():
    print('等待连接')
    light.value(1)
    time.sleep(1)
    light.value(0)
    time.sleep(1)
    if time.time() - STime > 10:
        print('连接失败,请重新输入')
        with open("wifi.txt", 'w') as wifi:
            name = input('请输入wifi名:')
            pwd = input('请输入wifi密码:')

            wifi.write(name)
            wifi.write('\n')
            wifi.write(pwd)

        print('开始读取账号密码')
        with open('wifi.txt', 'r') as wifi:
            name = wifi.readline()
            name = name.strip('\n')
            pwd = wifi.readline()

        print(name)
        print(pwd)

        wlan = network.WLAN(network.STA_IF)  # 启用终端模式
        wlan.active(True)  # 一定要有这个!!!不然connect不工作(8266不一定)

        light = Pin(12, Pin.OUT)
        light.value(1)

        print("wifi连接中")
        wlan.connect(name, pwd)     # 连接wifi

        time.sleep(0.2)
        STime = time.time()
if wlan.isconnected():
    for num in range(3):
        light.value(0)
        time.sleep(0.2)
        light.value(1)
        time.sleep(0.2)
    light.value(0)
    print('wifi连接成功')  # 反馈
    print('wifi信息:=%s' % str(wlan.ifconfig()))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值