pdf-icon

Wi-Fi

案例程序

判断Wi-Fi是否连接上,结果显示在屏幕上,失败显示红色(false),成功显示绿色(true)

from m5stack import *
from m5stack_ui import *
from uiflow import *
import wifiCfg

screen = M5Screen()
screen.clean_screen()
screen.set_screen_bg_color(0xFFFFFF)

label0 = M5Label('label0', x=95, y=57, color=0x000, font=FONT_MONT_14, parent=None)

screen.set_screen_bg_color(0xff0000)
wifiCfg.doConnect('M5-R&D', 'echo"password">/dev/null')
if wifiCfg.wlan_sta.isconnected():
  screen.set_screen_bg_color(0x33ff33)
  label0.set_text(str(wifiCfg.wlan_sta.isconnected()))

功能说明

wifiCfg.autoConnect(lcdShow=False)
  • 尝试自动连接到先前配置过的 Wi-Fi 网络。
wifiCfg.autoConnect(lcdShow=True)
  • 尝试自动连接到先前配置过的 Wi-Fi 网络,并在 LCD 上显示连接过程的状态信息。
wifiCfg.reconnect()
  • 尝试重新连接到之前配置并保存的 Wi-Fi 网络。这个方法通常用于设备失去连接后重新尝试连接。

wifiCfg.doConnect('', '')
  • 设置WiFi名称和密码
M5Label('label0', x=193, y=67, color=0x000, font=FONT_MONT_14, parent=None)
  • 表示发送点对点消息到指定的 API Key。
str(getP2PData())
  • 获取接收到的 P2P(点对点)消息数据。
network.WLAN(network.STA_IF)
  • 创建一个 WLAN(无线局域网)接口对象。选择Wi-Fi模式
    • station模式:连接局域网Wi-Fi
    • access point模式:自开启热点
wlan.config(essid='', password='', authmode=network.AUTH_OPEN)
  • wlan.config(): 配置 WLAN 接口的参数。
    • essid: 设置接入点的 SSID(网络名称)。
    • password: 设置接入点的密码。
    • authmode: 设置接入点的认证模式。
wlan.active(True)
  • 激活接口:用来激活无线网络接口的。这个命令用于启用设备的Wi-Fi功能,使其可以开始进行无线通信
str(wlan.scan())
  • 扫描周围的 Wi-Fi 网络,并返回一个包含可用网络信息的列表
str(wlan.scan())
  • 检查ESP32是否已连接到Wi-Fi网络
wlan.connect('your_SSID', 'your_PASSWORD')
  • ssid: 要连接的Wi-Fi网络的名称。
  • password: Wi-Fi网络的密码。
str(wlan.config('mac'))
  • str(wlan.config('mac')): 获取设备的MAC地址,并将其转换为字符串格式。
  • str(wlan.config('essid')): 获取当前配置的SSID(网络名称),并将其转换为字符串格式。
str(wlan.ifconfig())
  • 获取设备的网络配置
str(wlan.status())
  • 获取当前Wi-Fi连接的状态。
wlan.disconnect()
  • 断开Wi-Fi连接
str(1001)
  • STAT_IDLE: Wi-Fi空闲状态。设备当前未尝试连接到任何Wi-Fi网络。
  • STAT_CONNECTING: Wi-Fi连接中。设备正在尝试连接到指定的Wi-Fi网络。
  • STAT_GOT_IP: Wi-Fi已连接并获得IP地址。设备已成功连接到Wi-Fi网络,并从DHCP服务器获得了IP地址。
smartconfig.set_type(smartconfig.ESPTOUCH)
  • ESPTOUCH: 使用 ESPTOUCH 协议进行配置。通过手机 App 将 Wi-Fi 配置信息(SSID 和密码)发送给设备,使其连接到指定的 Wi-Fi 网络。
  • AIRKISS: 使用 AIRKISS 协议进行配置。AIRKISS 是腾讯开发的一种无线配置协议,用于将 Wi-Fi 配置信息发送到设备。
  • ESPTOUCH_AIRKISS: 同时使用 ESPTOUCH 和 AIRKISS 协议进行配置。设备将同时监听两种协议,手机可以使用任意一种协议发送 Wi-Fi 配置信息,设备接收到后进行配置。
smartconfig.start()
  • 启动 SmartConfig 功能,使设备进入 SmartConfig 配置模式,等待接收来自手机 App 的 Wi-Fi 配置信息(SSID 和密码)。
smartconfig.stop()
  • 停止 SmartConfig 功能,退出 SmartConfig 配置模式。
str(smartconfig.status())
  • 获取 SmartConfig 当前的状态。
str(smartconfig.get_ssid())
  • 获取 SmartConfig 过程中接收到的 Wi-Fi 网络的 SSID(网络名称)。
str(smartconfig.get_password())
  • 获取 SmartConfig 过程中接收到的 Wi-Fi 网络的 password(网络密码)。
str(smartconfig.get_phoneip())
  • 获取在 SmartConfig 过程中,手机的 IP 地址。
str(smartconfig.get_phoneip())
  • 表示 SmartConfig 扫描 Wi-Fi 网络完成的事件。
On This Page