广博带你玩esp8266-WIFI芯片(四)(lua开发)--WIFI芯片不通信有个啥用(TCP服务器、客户端)

本文介绍了ESP8266 WiFi芯片如何进行TCP通信,包括TCP服务器的创建、监听、注册事件及客户端的连接、发送消息等。详细讲解了TCP服务器和客户端的代码实现,并提供了测试效果。
摘要由CSDN通过智能技术生成


经过了前几次的练习,大家已经掌握了lua语言开发的ESP8266芯片的基本使用了吧,这一次我们就要用WIFI的热点与终端模式的TCP协议来通信,还可以控制点灯哦!

TCP协议是**传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,**由IETF的RFC 793 定义。
TCP旨在适应支持多网络应用的分层协议层次结构。 连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。 原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。

TCP协议有两个模式,一个是客户端模式,一个是服务器模式
如果你选择服务器模式的话,就意味着你需要等待他人的链接,你需要持续监听某一个端口,当有人链接时你就可以通过链接后的通道进行通信。

如果你选择客户端模式的话,那这与服务器模式相反,你需要主动的链接其他人的某个端口,在连接成功后就可以通信。

值得注意的是 :TCP是面向链接的通信协议,所以每次通信需要建立链接后进行通信,如果中途断开链接,则需要重新进行链接才可以通信。

TCP服务器的使用

TCP服务器的创建

我们先建立TCP服务器。使用的API可以在官方的API网站查找。
在这里插入图片描述
代码的话就是:
表示创建了一个TCP的服务器,但是这还没完!你还需要监听一个端口,等待别人链接!

server=net.createServer(net.TCP,30)

注册事件

在这里插入图片描述

监听端口:

在这里插入图片描述

代码:
意思是注册了接收信息时的回调函数,功能是打印出接收的值。

server:listen(8000,function(conn)    
		conn:on("receive",function(client,payload) 
				print("recv:"..payload)  	
		end)
	end)

TCP服务器整体代码

因为TCP服务器是在有网的环境下才能使用,所以我们需要建立WIFI热点(不知道怎么办可以看上期,本期直接给出代码)
先创建WIFI热点并设置用户名密码,以及有人链接时的IP地址的分配的开始值
在串口打印热点的IP地址,
创建一个TCP服务器并设置监听8000端口,
注册接收到信息时在串口打印所接收的信息。

wifi.setmode(wifi.SOFTAP)
wifi.ap.</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值