【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()
相关推荐
m0_7478545211 小时前
如何检测受保护链接(如 Twitter)的可访问性
jvm·数据库·python
baidu_3409988211 小时前
宝塔面板如何设置网站访问密码_配置Nginx认证保护目录
jvm·数据库·python
2301_7775993711 小时前
Python闭包是什么_深入理解Python闭包原理与变量作用域
jvm·数据库·python
HHHHH1010HHHHH11 小时前
mysql事务回滚与存储引擎的关系_mysql回滚机制分析
jvm·数据库·python
用户83562907805111 小时前
Python 操作 PowerPoint:添加与设置文本框完整教程
后端·python
InfinteJustice12 小时前
SQL如何处理分组后的空值统计_善用COALESCE与聚合函数
jvm·数据库·python
2301_8038756112 小时前
JavaScript 中按字段对嵌套对象数组进行分组的实用教程
jvm·数据库·python
qq_3721542312 小时前
如何在 WooCommerce 后台按订单总金额精准筛选订单
jvm·数据库·python
qq_4240985612 小时前
CSS如何让背景图片在容器内居中_使用background-position设为center
jvm·数据库·python
m0_6178814212 小时前
如何将扁平数组转换为嵌套树形结构(JavaScript 实现)
jvm·数据库·python