WIFI模组
重要:WiFi子系统由必须定期运行的后台任务维护。任何超过15ms(毫秒)的功能或任务都可能导致WiFi子系统崩溃。为了避免这些潜在的崩溃,建议在执行任何超过15ms的任务或函数之前,使用wifi.suspend()挂起WiFi子系统。
esp8266链接WIFI(简单)
wifi.setmode(wifi.STATION)
station_cfg = {}
station_cfg.ssid = WIFI名字
station_cfg.pwd = WIFI密码
--这里是把WIFI名字,密码保存到内部存储中,断电后也一直存在,好像,以后把上面的WIfi名字,密码删了都还保存着
station_cfg.save = true
wifi.sta.config(station_cfg)
--链接wifi
--wifi.sta.connect()
--自动重连
wifi.sta.autoconnect(1)
wifi断线后自动重连
1.通过wifi.sta.autoconnect(1)命令
这是最简单的,就是把链接代码
wifi.sta.connect() 改为 wifi.sta.autoconnect(1)
这样,在断线后就能自动链接
2.通过监听器获知wifi连接状态
注册事件监听器 wif.sta.eventMonReg()
开始监听 wifi.sta.eventMonStart()
wifi.setmode(wifi.STATION)
wifi.sta.config('wifi账号', 'wifi密码')
wifi.sta.connect()
status = nil
wifi.sta.eventMonReg(wifi.STA_GOTIP, function()
status = 'STA_GOTIP'
print(status, wifi.sta.getip())
end)
--wifi.sta.eventMonStart(1000)函数表明检测网络状态的间隔是一秒
wifi.sta.eventMonStart(1000)
一般8266用到的命令
1.设置wifi模式 wifi.setmode()
此命令参数:wifi.STATION 仅链接wifi模式
wifi.SOFTAP 仅作为热点模式
wifi.STATIONAP 允许建立wifi热点,并链接到其他wifi
wifi.NULLMODE 关闭wifi
语法:
wifi.setmode(wifi.STATION)
2.设置wifi链接配置 wifi.sta.config()
参数:station_config 包含配置的表格 ,其中
ssid 小于32字节的wifi名
pwd 0-64的字符串wifi密码
save 默认为true就把参数保存到内存,false 不保存
语法1:
station_cfg = {}
station_cfg.ssid = "wifi账号"
station_cfg.pwd = "wifi密码"
station_cfg.save = true
wifi.sta.config(station_cfg)
语法2(推荐):
wifi.sta.config("wifi账号","wifi密码")
WiFi modes 无线模式
连接到WiFi网络的设备称为工作站(STA)。连接到Wi-Fi由一个接入点(AP)提供,它充当一个或多个站点的集线器。另一端的接入点连接到有线网络。接入点通常与路由器集成在一起,提供从Wi-Fi网络到internet的访问。每个接入点都由SSID(服务集标识符)识别,该标识符本质上是连接设备(站点)到WiFi时选择的网络名称。
每个ESP8266模块都可以作为一个站运行,所以我们可以连接到WiFi网络。它还可以作为热点(soft- ap),建立自己的WiFi网络。因此,我们可以将其他站点连接到这些模块。第三,ESP8266还可以同时在终端和热点模式下运行。