ESP8266 Node MCU连接wifi怎么看是不是已连上-Arduino中文社区 - Powered by Discuz! Archiver

cdma2zj 发表于 2020-3-14 11:06

ESP8266 Node MCU连接wifi怎么看是不是已连上

本帖最后由 cdma2zj 于 2020-3-14 11:06 编辑


代码:
print("Starting....");


station_cfg={}
station_cfg.ssid="MJ"
station_cfg.pwd="pa06561123"
station_cfg.save=false
wifi.sta.config(station_cfg)
wifi.sta.connect()
dotimes=0
while wifi.sta.getip() == nil and dotimes<100 do
    dotimes=dotimes+1
    print("Connecting..."..dotimes)
    tmr.delay(100)
end
tmr.delay(500)
if dotimes<100 then
    print("Connected, IP is "..wifi.sta.getip())
else
    print("Connect Err")
end

tmr.create():alarm(5000, tmr.ALARM_AUTO, function ()
    print("ok:"..wifi.sta.getip())
   
end)
根据固定官方https://nodemcu.readthedocs.io/en/master/modules/wifi/#wifistaconnect的说明,第9行的代码wifi.sta.connect(),有个回调connected_cb,但是不知道怎么写这人回调。我是想在连接成功或失败后再向下执行其它代码,所以写了个while循环,但是第14行tmr.delay(100)也不行,没有延时,一下就加到100次了
100次之后,那个每隔5秒打开一次IP却又能正常显示IP了。


cdma2zj 发表于 2020-3-14 14:07

第14行tmr.delay(100)已经解决,它的延时单位是us,不是ms,1ms=1000us:L

cdma2zj 发表于 2020-3-14 16:18


自己已经搞定



页: [1]
查看完整版本: ESP8266 Node MCU连接wifi怎么看是不是已连上