【ESP32运行MicroPython】连接无线网络、延迟和定时、实时时钟 (RTC)、WDT(看门狗定时器)

常用语法如下

python 复制代码
import network
wlan = network.WLAN(network.STA_IF) #创建工作站接口
wlan.active(True) #激活接口
Wlan.scan() #扫描接入点
wlan.isconnected() #检查站点是否连接到AP
wlan.connect('ssid', 'key') #连接AP wifi名称与密码
wlan.config('mac') #获取接口的mac地址
wlan.ifconfig() #获取接口的IP/netmask/gw/DNS地址

# AP热点模式
ap = network.WLAN(network.AP_IF) #创建接入点接口
ap.config(ssid='ESP-AP') #设置接入点的ssid
Ap.config (max_clients=10) #设置可以连接到网络的客户端数量
ap.active(True) #激活接口

连接wifi

封装函数,运行后ESP32将连接到名称为test的wifi,wifi密码为12345678

默认始终重新连接,指导连上为止

python 复制代码
def do_connect():
    import network
    wlan = network.WLAN(network.STA_IF) # 创建一个名为wlan的无线局域网对象,使用network.STA_IF作为其接口
    wlan.active(True) # 激活wlan对象,使其处于活动状态
    if not wlan.isconnected(): #检查wlan对象是否已连接到网络。如果没有连接,则执行以下代码块。
        print('connecting to network...')
        wlan.connect('test', '12345678')
        while not wlan.isconnected(): # 使用while循环检查wlan对象是否已连接到网络。只要尚未连接,就会一直执行循环内的代码。
            pass
    print('network config:', wlan.ifconfig())
    mac = wlan.config('mac')
    mac_address = ':'.join(['{:02x}'.format(b) for b in mac])
    print('mac:', mac_address)  # 打印设备的mac地址

延迟和定时

python 复制代码
import time

Time.sleep(1) #休眠1秒
Time.sleep_ms(500) #休眠500毫秒
Time.sleep_us(10) #睡眠10微秒
Start = time.ticks_ms() #获取毫秒计数器
Delta = time.ticks_diff(time.ticks_ms(), start) #计算时间差

实时时钟 (RTC)

python 复制代码
from machine import RTC
rtc = RTC()
rtc.datetime() # get date and time

WDT(看门狗定时器)

python 复制代码
from machine import WDT

# 启用WDT,超时时间为5s(最小为1s)。
wdt = WDT(timeout=5000)
wdt.feed()
相关推荐
用户83562907805120 小时前
Python 操作 PDF 附件:添加、查看与管理指南
后端·python
宇宙之一粟1 天前
乐企版式文件生成平台
java·后端·python
学测绘的小杨2 天前
CompassFusion:一个从 GNSS 到 GNSS/INS 组合导航的独立工程包
python
zzzzzz3102 天前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐2 天前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
兵慌码乱3 天前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot3 天前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海3 天前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱3 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽3 天前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict