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

发布时间:2023年12月26日

常用语法如下

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
默认始终重新连接,指导连上为止

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地址

延迟和定时

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)

from machine import RTC
rtc = RTC()
rtc.datetime() # get date and time

WDT(看门狗定时器)

from machine import WDT

# 启用WDT,超时时间为5s(最小为1s)。
wdt = WDT(timeout=5000)
wdt.feed()
文章来源:https://blog.csdn.net/weixin_42133116/article/details/135220415
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。