ESP8266学习之路 九 (UDP客户端通信)

lua开发8266API手册:https://nodemcu.readthedocs.io/en/master/​​​​​​​

官网关于udp通信的介绍

ESP8266学习之路 九 (UDP客户端通信)_第1张图片

 

esp8266模块在udp客户端模式下通信步骤

1. 接上路由器

2.  创建UDP套接字,也就是通信通道

3. 发送数据要知道UDP服务器的端口和ip ,  其实也没有连接 只是客户端发送数据时要知道这些信息,不然也不知道数据发哪去了

 

udpclient.lua文件:

wifi.setmode(wifi.STATIONAP)--设置模块工作在ap+station模式下

apcfg={}
apcfg.ssid="ESP8266WIFI"
apcfg.pwd="12345678"
wifi.ap.config(apcfg) --配置模块AP模式

stacfg={}
stacfg.ssid="TP-Link"
stacfg.pwd="12345678"
wifi.sta.config(stacfg)--配置模块station模式
wifi.sta.autoconnect(1)--开启模块自动连接WIFI

ConnectIP = "192.168.0.100" --连接UDP服务器的ip
ConnectPort = 8000			--连接UDP服务器监听的端口
 
UdpSocket = net.createUDPSocket() --创建UDP套接字 通信通道

--[[
UDP 客户端接收数据 其回调函数中包含 通信的socket 数据  端口 ip
]]
UdpSocket:on("receive", function(socket, data, port, ip)
		 print("\r\nport:"..port.."---ip:"..ip.."\r\n") --打印远端 通信ip和端口 
        uart.write(0,data)  --udp客户端接收的数据通过串口发送
end)

--[[
串口接收的数据,通过UDP客户端发送
]]
uart.on("data",0,function(data) 
    if UdpSocket~=nil then 
    UdpSocket:send(ConnectPort, ConnectIP, data)
    end
end,0)

 

ESP8266学习之路 九 (UDP客户端通信)_第2张图片

 

 

你可能感兴趣的:(ESP8266学习)