四,ESP8266 TCP服务器(基于Lua脚本语言)
我要赶时间赶紧写完所有的内容....朋友的东西答应的还没做完呢!!!!!!!没想到又来了新的事情,,.......
配置模块作为TCP服务器然后呢咱们连接服务器发指令控制LED亮灭

控制的指令呢咱就配置成----
http://www.cnblogs.com/yangfengwu/p/7513097.html
这篇文章最后的指令,,毕竟最终咱们就要做成那样子.....这样的话8266就应该使用的非常顺手和轻松了
可以看一下这篇文章,,初略看一下就行,这是以前写的代码不怎么好,,,这篇文章会详细的解释的
http://www.cnblogs.com/yangfengwu/p/6407727.html#3771010 不过呢怕有所遗漏,就两篇文章同时参考吧
新建一个文件就叫wifi.lua

咱们呢就先做成一个客户端连接的,,然后连接模块的无线控制继电器,,,然后在做成多个连接的,,然后呢再设置成连接路由器,,当然或许亲们的可以远程控制哈
android客服端+eps8266+单片机+路由器之远程控制系统 只看路由器设置部分就好了,,程序这次咱用Lua开发的,,要比那好的多....
我的init.lua

gpio.mode(,gpio.OUTPUT)
gpio.write(,) tmr.alarm(, , , function()
dofile("wifi.lua")
end)
我的wifi.lua

cfg={}
cfg.ssid="Hellow8266"
cfg.pwd=""
wifi.ap.config(cfg)
TCPSever=net.createServer(net.TCP,)
TCPSever:listen(,function(socket)
socket:on("receive",function(socket,data)
if data == "++MD610" then
gpio.write(,)
end
if data == "++MD600" then
gpio.write(,)
end
end)
socket:on("disconnection",function(sck,c)
socket = nil
end)
end)
现在可以测试一下

模块内部默认的IP是192.168.4.1


下面的解释呢就照搬以前的了




对了
现在让模块连接路由器,,,这样方便些
现在的wifi.lua
wifi.setmode(wifi.STATIONAP)
cfg={}
cfg.ssid="Hellow8266"
cfg.pwd=""
wifi.ap.config(cfg)
apcfg={}
apcfg.ssid="qqqqq"
apcfg.pwd=""
wifi.sta.config(apcfg)
wifi.sta.connect()
TCPSever=net.createServer(net.TCP,)
TCPSever:listen(,function(socket)
socket:on("receive",function(socket,data)
if data == "++MD610" then
gpio.write(,)
socket:send("relay=1")
end
if data == "++MD600" then
gpio.write(,)
socket:send("relay=0")
end
end)
socket:on("disconnection",function(sck,c)
socket = nil
end)
end)
printip =
wifi.eventmon.register(wifi.eventmon.STA_DISCONNECTED, function(T)
printip =
end)
wifi.eventmon.register(wifi.eventmon.STA_GOT_IP, function(T)
if printip == then
print("+IP"..T.IP)
end
printip =
end)


还有两个没有连接上路由器和连接上路由器的事件函数




现在呢我们让网络的数据发送到串口,,,,,串口的数据发送到网络
现在的wifi.lua
wifi.setmode(wifi.STATIONAP)
cfg={}
cfg.ssid="Hellow8266"
cfg.pwd=""
wifi.ap.config(cfg)
apcfg={}
apcfg.ssid="qqqqq"
apcfg.pwd=""
wifi.sta.config(apcfg)
wifi.sta.connect()
TCPSever=net.createServer(net.TCP,)
TCPSever:listen(,function(socket)
socket:on("receive",function(socket,data)
uartsocket = socket
uart.write(,data)
if data == "++MD610" then
gpio.write(,)
socket:send("relay=1")
end
if data == "++MD600" then
gpio.write(,)
socket:send("relay=0")
end
end)
socket:on("disconnection",function(sck,c)
socket = nil
uartsocket = nil
end)
end)
uart.on("data",,function(data)
if uartsocket ~= nil then
uartsocket:send(data)
end
end, )
printip =
wifi.eventmon.register(wifi.eventmon.STA_DISCONNECTED, function(T)
printip =
end)
wifi.eventmon.register(wifi.eventmon.STA_GOT_IP, function(T)
if printip == then
print("+IP"..T.IP)
end
printip =
end)


现在下进去测试


今天就先到这里,,,太晚了...........
https://www.cnblogs.com/yangfengwu/p/7531730.html
四,ESP8266 TCP服务器(基于Lua脚本语言)的更多相关文章
- 六,ESP8266 TCP Client(基于Lua脚本语言)
今天不知道是不是让我姐挺失望.......很多时候都不知道自己努力的方向对不对,,以后能不能带给家人最美好的期盼...... Init.lua 没啥改变,,就改了一下加载Client.lua gpio ...
- ESP8266使用详解--基于Lua脚本语言
这些天,,,,今天终于看到了希望,,,天道酬勤 先说实现的功能...让ESP8266连接无线网,然后让它建立服务器,,我的客户端连接上以后,发给客户端发数据模块打印到串口,,往ESP8266串口里发数 ...
- 八,ESP8266 文件保存数据(基于Lua脚本语言)
https://www.cnblogs.com/yangfengwu/p/7533845.html 应该是LUA介绍8266的最后一篇,,,,,,下回是直接用SDK,,然后再列个12345...... ...
- 一,ESP8266下载和刷固件(基于Lua脚本语言)
用自己的小板测试...... 安排上呢 一, ESP8266下载和刷固件(Lua开发----体验一下lua开发的魅力所在) 二, 控制一个灯亮灭 三, TCP服务器 四, TCP客户端 五, UDP ...
- 四,ESP8266 TCP服务器
我要赶时间赶紧写完所有的内容....朋友的东西答应的还没做完呢!!!!!!!没想到又来了新的事情,,....... 配置模块作为TCP服务器然后呢咱们连接服务器发指令控制继电器吸合和断开 控制的指令呢 ...
- 五,ESP8266 TCP服务器多连接(基于Lua脚本语言)
https://www.cnblogs.com/yangfengwu/p/7524326.html 一些时间去准备朋友的元器件了... 接着写,,争取今天写完所有的文章,,因为答应了朋友下周5之前要做 ...
- 二,ESP8266 GPIO和SPI和定时器和串口(基于Lua脚本语言)
https://www.cnblogs.com/yangfengwu/p/7514336.html 我们写lua用这个软件 如果点击的时候提示安装,,安装就行,,如果没有提示呢可以,按照下面链接的提示 ...
- 三,ESP8266 SPI(基于Lua脚本语言)
https://www.cnblogs.com/yangfengwu/p/7520260.html 重点是说SPI通信协议,,,, 不要害怕协议因为协议是人规定的,,刚好我也是人......规定的协议 ...
- 九,ESP8266 判断是断电上电(强制硬件复位)之后运行的内部程序还是内部软件复位之后运行的程序(基于Lua脚本语言)
现在我有一个需求,WIFI模块控制一个继电器,我要做的是如果内部程序跑乱了,造成了内部程序复位重启,那么控制继电器的状态不能改变 如果是设备断电了,然后又来电了,我需要的是继电器一定要是断开才好.不能 ...
随机推荐
- (二)windows上使用docker
参考文献: 1.下载CentOS7镜像 Docker中使用CentOS7镜像 2.使用docker 在Windows里使用Docker 3.使用docker docker学习笔记(windows/ce ...
- JS 解决 IOS 中拍照图片预览旋转 90度 BUG
上篇博文[ Js利用Canvas实现图片压缩 ]中做了图片压缩上传,但是在IOS真机测试的时候,发现图片预览的时候自动逆时针旋转了90度.对于这个bug,我完全不知道问题出在哪里,接下来就是面向百度编 ...
- Cookie、Session 和 Token区别
1 Cookie.Session 和 Token 都是用来做持久化处理的,目的就是让客户端和服务端相互认识.Http 请求默认是不持久的没有状态的,谁也不认识谁. 2 Cookie: 是存放在客户 ...
- 安卓基础之Activity的四种启动模式
Activity的四种启动模式 Activity的启动模式在清单文件中配置: <activity ... activity:lauchMode:"..."; //有四种模 ...
- ConstraintLayout (约束布局)属性详情
本文部分内容来自于网络,点击浏览原文 app:layout_constraintLeft_toLeftOf //Constrains the left side of a child to the l ...
- 回归JavaScript基础(十)
主题:创建对象 原型模式 JavaScript中的每个对象都有一个prototype属性(原型属性),这个属性是一个指针,指向一个对象,而这个对象可以由一些属性和方法组成.被指向的对象,可以是多个对象 ...
- UIAutomator环境搭建
目录 下载.安装JDK&配置Java环境变量 下载.安装SDK.ADT&配置Android环境变量 下载.安装ANT&配置ANT环境变量 创建UIAutomator工程 UIA ...
- leveldb源码分析--日志
我们知道在一个数据库系统中为了保证数据的可靠性,我们都会记录对系统的操作日志.日志的功能就是用来在系统down掉的时候对数据进行恢复,所以日志系统对一个要求可靠性的存储系统是极其重要的.接下来我们分析 ...
- jboss eap6.1(4)(部署应用)
1.添加应用war包 手动部署,添加war包到standalone\deployments下,手工创建一个文件,如war包名称是a.war,创建一个a.war.deployed文件,内容随意. 2. ...
- ASP.NET动态引用样式表(css)和脚本(js)文件
// 引入js文件 HtmlGenericControl scriptControl = new HtmlGenericControl("script"); scriptContr ...