nodecu8266 lua应用(四)----wifi与tcp通信

wifi模块

wifi模块函数比较多,在这里举几个常用的讲解

wifi常用的几个函数
wifi.setmode(mode)
wifi.sta.config(ssid, password)
wifi.sta.connect()
wifi.sta.getip()
wifi.ap.config()
wifi.ap.getip()

 

wifi.setmode(mode)

wifi.setmode(mode)

参数:mode: 取值为:
wifi.STATION(连接模式), 
wifi.SOFTAP(热点模式) 
wifi.STATIONAP(二者共存)

 

wifi.sta.config(ssid, password)

这个函数有两种用法,根据不同固件选择不同方法,可以测试一下哪个能用;
一·
wifi.sta.config("myssid","mypassword")

二.
cfg={}
cfg.ssid="myssid"
cfg.pwd="mypwd"
wifi.sta.config(cfg)

 

wifi.sta.connect()

配置好要连接的wifi后使用次函数启动连接
wifi.sta.connect()

 

wifi.sta.getip()

连接成功后返回自己的ip地址,否则返回nil

wifi.setmode(wifi.STATION)
wifi.sta.config("账号","密码")
wifi.sta.connect()
tmr.alarm(1, 1000, 1, function()
  if wifi.sta.getip()== nil then
    print("IP unavaiable, Waiting...")
  else
    tmr.stop(1)
    print("Config done, IP is "..wifi.sta.getip())
  end
end)

 

wifi.ap.config()


这个函数有两种用法,根据不同固件选择不同方法,可以测试一下哪个能用;
一.
wifi.ap.config("myssid","mypassword")

二.
cfg={}
cfg.ssid="myssid"
cfg.pwd="mypwd"
wifi.ap.config(cfg)

 

wifi.ap.getip()

建立好热点后返回自己的ip地址

wifi.setmode(wifi.SOFTAP)
cfg={}
cfg.ssid="myssid"
cfg.pwd="mypwd"
wifi.ap.config(cfg)
print(wifi.ap.getip())



tcp通信模块

net.createServer(type, timeout):服务器模式
net.createConnection(type, secure):客户端模式

 

服务器模式独有的函数
listen(port)

 

客户端模式独有函数
connect(port, ip/domain)

 

共有的函数
send(string)
close()
on(event, function(c))

 

server.lua

sv=net.createServer(net.TCP, 30)    --创建一个服务器,客户端连接后30s内没有通信自动断开客户端
sv:listen(80,function(c)            --监听80端口,当有客户端连接后,创建客户端对象c
  c:on("receive", function(c, msg)  --当接收到客户端发送过来的消息触发此函数
    print(msg)                      --打印接收到的消息
  end)
  c:send("hello world")             --向客户端发送消息“hello world”
  c:close()                         --断开客户端的连接
end)

 

client.lua

sk=net.createConnection(net.TCP, 0)    --创捷一个tcp客户端
sk:connect(80,"192.168.1.1")           --连接IP地址和端口80
sk:on("receive",  function(sv, c)      --当接收到服务器发送过来的消息是触发此函数
    print(c)                           --打印接收到的消息
end )
sk:send("hello world")                 --向服务器发送数据

 

on(event, function(c))

event:                             取值为: 
"connection",                      连接成功时
"reconnection",                    重新连接成功时
"disconnection",                   连接断开时
"receive",                         接收到消息时
"sent",                           发送消息时
function (net.socket, [string]):   回调函数。第一个参数:是 socket.
如果事件是"receive", 第二个参数:则为接收到的字符串。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值