由于NodeMCU提供简洁明了的API借口,所以调用WIFI还是比较方便的,官方也有大部分的实例可以用来参考的。
station函数运用:运用.sta.sethostname设置nodeMCU模块的名字,方便与其他设备区分。注册一个状态(wifi.STA_GOTIP)监听,当连入wifi的时候会触发回调。最后使用.sta.config接入网络,相当于平时用手机输入ssid和密码。为了方便,我用笔记本共享wifi来给nodeMCU接入。
wifi.sta.sethostname("My_NodeMCU")
print(wifi.sta.gethostname())
function printap(ap)
for k, v in pairs(ap) do
print(k.." : "..v)
end
end
wifi.sta.eventMonReg(wifi.STA_GOTIP, function()
print(wifi.sta.getip())
wifi.sta.getrssi()
wifi.sta.getap(printap)
end)
wifi.sta.eventMonStart()
wifi.sta.config("mywifi", "1234567890") //括号里面的信息需要自行修改成自己的
作为AP使用。
需要把wifi设置为station&ap混合模式。使用.ap.config配置ap信息,再把enduser_setup设置成手动模式
wifi.setmode(wifi.STATIONAP)
wifi.ap.config({ssid="nodeMCU", pwd="12345678", auth=wifi.WPA2_PSK})
enduser_setup.manual(true)
print("ap ip:"..wifi.ap.getip())
print("ap mac:"..wifi.ap.getmac())
print("sta mac:"..wifi.sta.getmac())
enduser_setup.start(
function()
print("sta ip:" .. wifi.sta.getip())
wifi.setmode(wifi.STATION)
end,
function(err, str)
print("enduser_err:" .. str)
enduser_stop()
end
)
|