类 WLAN – 控制内置 WiFi 接口¶
此类为 WiFi 网络处理器提供驱动程序。用法示例:
import network
# enable station interface and connect to WiFi access point
nic = network.WLAN(network.STA_IF)
nic.active(True)
nic.connect('your-ssid', 'your-password')
# now use sockets as usual
构造函数¶
-
class
network.
WLAN
(interface_id)¶
创建 WLAN 网络接口对象。支持的接口是
network.STA_IF
(站又名客户端,连接到上游 WiFi 接入点)和network.AP_IF
(接入点,允许其他 WiFi 客户端连接)。以下方法的可用性取决于接口类型。例如,只有 STA 接口可以连接WLAN.connect()
到接入点。
方法¶
-
WLAN.
active
([is_active])¶ 如果传递布尔参数,则激活(“up”)或停用(“down”)网络接口。否则,如果没有提供参数,则查询当前状态。大多数其他方法需要活动接口。
-
WLAN.
connect
(ssid=None, password=None, *, bssid=None)¶ 使用指定的密码连接到指定的无线网络。如果给出了bssid,则连接将被限制为具有该 MAC 地址的接入点(在这种情况下还必须指定ssid)。
-
WLAN.
disconnect
()¶ 断开当前连接的无线网络。
-
WLAN.
scan
()¶ 扫描可用的无线网络。
扫描只能在 STA 接口上进行。返回包含 WiFi 接入点信息的元组列表:
(ssid, bssid, channel, RSSI, authmode, hidden)
bssid是访问点的硬件地址,以二进制形式,作为字节对象返回。您可以使用
ubinascii.hexlify()
将其转换为 ASCII 格式。authmode 有五个值:
0 – open
1 – WEP
2 – WPA-PSK
3 – WPA2-PSK
4 – WPA/WPA2-PSK
和两个隐藏:
0 – 可见
1 – 隐藏
-
WLAN.
status
([param])¶ 返回无线连接的当前状态。
当不带参数调用时,返回值描述网络链接状态。可能的状态定义为常量:
STAT_IDLE
– 无连接,无活动,STAT_CONNECTING
–正在进行连接,STAT_WRONG_PASSWORD
– 由于密码错误而失败,STAT_NO_AP_FOUND
– 失败,因为没有接入点回复,STAT_CONNECT_FAIL
– 由于其他问题而失败,STAT_GOT_IP
– 连接成功。
当使用一个参数调用时,param应该是一个字符串,命名要检索的状态参数。WiFI STA 模式支持的参数有:
'rssi'
.
-
WLAN.
isconnected
()¶ 在 STA 模式的情况下,
True
如果连接到 WiFi 接入点并具有有效的 IP 地址,则返回。在 AP 模式下,True
当站点连接时返回。False
否则返回。
-
WLAN.
ifconfig
([(ip, subnet, gateway, dns)])¶ 获取/设置 IP 级网络接口参数:IP 地址、子网掩码、网关和 DNS 服务器。当不带参数调用时,此方法返回一个包含上述信息的 4 元组。要设置上述值,请传递带有所需信息的 4 元组。例如:
nic.ifconfig(('192.168.0.4', '255.255.255.0', '192.168.0.1', '8.8.8.8'))
-
WLAN.
config
('param')¶ -
WLAN.
config
(param=value, ...) 获取或设置一般网络接口参数。这些方法允许使用超出标准 IP 配置的附加参数(如 处理
WLAN.ifconfig()
)。这些包括特定于网络和特定于硬件的参数。设置参数时,应使用关键字参数语法,可以一次设置多个参数。查询时,参数名应以字符串的形式引用,一次只能查询一个参数:# Set WiFi access point name (formally known as ESSID) and WiFi channel ap.config(essid='My AP', channel=11) # Query params one by one print(ap.config('essid')) print(ap.config('channel'))
以下是通常支持的参数(特定参数的可用性取决于网络技术类型、驱动程序和 MicroPython 端口)。
范围
描述
mac
MAC地址(字节) (bytes)
essid
WiFi 接入点名称(字符串)
channel
WiFi通道(整数)
hidden
ESSID 是否隐藏(布尔值)
authmode
支持认证模式(枚举,见模块常量)
password
访问密码(字符串)
dhcp_hostname
要使用的 DHCP 主机名
reconnects
尝试重新连接的次数(整数,0=无,-1=无限制)