唯倚社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4195|回复: 16

[学习教程] ESP8266设置为TCP服务器模式转发数据到串口

[复制链接]

137

主题

307

帖子

3811

积分

LV3

Rank: 3Rank: 3

积分
3811

最佳新人

发表于 2017-10-13 11:48:22 | 显示全部楼层 |阅读模式

轻松玩转社区

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 MartinGarrix 于 2017-10-13 12:08 编辑

ESP8266设置为TCP服务器模式
本教程配送ESP8266源码
实现原理及主要功能说明
       首先我们既然要将ESP8266设置为TCP服务器模式,我们查看ESP8266数据手册可以知道ESP8266有三种工作模式: tation 模式 soft-AP模式 station+soft-AP模式。可以看出我们的soft-AP模式就是TCP8266服务器模式。此次我们整体功能为当模块设置为TCP服务模式,那么我们可以用手机或者电脑PC去连接ESP8266模块,连接上之后我们向模块发送数据,打开模块的串口,我们可以看到我们手机发过来的数据。

编译环境:ESP_IDE                  
编译语言:C                             
硬件模块:WiFi继电器  WIOT-1模块
通信方式:串口       TCP
AndroidAPP应用名称:有人网络助手

主要代码说明
首先我们打开我们的ESP8266工程,找到我们user_main.c找到我们的user_init函数,这个函数我们主要初始化了串口,并设置了ESP8266模块的工作函数。

O)6MV3QMC$G478MHB]__JAT.png

这一句就是我们设置的工作方式。在InitWifiSetting,函数中我们初始化了WIFI,设置了WiFi属性,WiFi名字叫WeiecnIOT-XXX,其中后面的XX为MAC地址。WiFi无密码。可以看到我们在最上面定义了宏SERVER_LOCAL_PORT为60000,这是我们模块的服务器开放端口,这个是可以更改的值从0到65535。当然有些是可以用有些是不能随便乱用的,在这里我不做介绍,大家上网查资料。Tcp_server_recv_cb这是我们的ESP8266模块TCP接收函数void *arg : 回调函数的参数,网络传输结构体 espconn 指针。Pusrdata为TCP接收函数指针,length为TCP接收数据的长度。当ESP8266收到客户端发上来的数据,那么它会将数据进行转发到串口,我们可以打开串口看到相应数据。

Z4QFAN[NX5(U3IIIRO@D9P8.png
而在这里我们不得不提的就是我们的SendData函数,这是我们的ESP8266模块的TCP发送函数,调用它则可向客户端发送数据。它只有两个参数一个是数据一个是数据长度。还有一个TCPServerInit函数,这是TCP服务器初始化启动函数。
记住此固件IP地址为192.168.4.1,端口号为60000
手机APP演示
首先我们还是先链接wifi,wifi是没有密码的。

M[7V([}JD)9%~FWI_)EFJC0.png

M{R7)VO@%I$I920[ZPL%EXR.png

链接好之后我们点进有人网络助手应用。

W9Y7%YLK~P%YDOOIW1UEP0J.png

DO373_`X7DG39RZWOC@}OZA.png
当出现下图则说明TCP链接成功。

GB(K`TK~KSI2O2C{_Q6UU4A.png

连上之后我们就可以进行数据发送了。在框中输入你要发送的内容,则在串口接收区会收到相应内容。

~N]@@6X%$_II%{1A26G~CO7.png


THX9]{IL40U)0$MO~_7D(AV.png
这是我们发送的一堆字符,串口则收到了相应数据。代码回复可见百度云分享链接

游客,如果您要查看本帖隐藏内容请回复

33

主题

160

帖子

434

积分

版主

Rank: 7Rank: 7Rank: 7

积分
434
发表于 2017-10-13 13:05:01 | 显示全部楼层
元芳你怎么看
回复

使用道具 举报

27

主题

142

帖子

522

积分

版主

Rank: 7Rank: 7Rank: 7

积分
522
发表于 2017-10-13 13:57:08 | 显示全部楼层
我就看看
回复

使用道具 举报

1

主题

100

帖子

79

积分

版主

Rank: 7Rank: 7Rank: 7

积分
79
发表于 2017-10-13 13:57:29 | 显示全部楼层
你们那些十五字神马的完全弱爆了
回复

使用道具 举报

27

主题

142

帖子

522

积分

版主

Rank: 7Rank: 7Rank: 7

积分
522
发表于 2017-10-13 14:17:51 | 显示全部楼层
我最喜欢回复人少的贴子了,如果贴子沉了,我就会觉得是自己弄沉的,非常有成就感!
回复

使用道具 举报

59

主题

169

帖子

754

积分

版主

Rank: 7Rank: 7Rank: 7

积分
754
发表于 2017-10-13 14:25:00 | 显示全部楼层
赶上直播了
回复

使用道具 举报

0

主题

3

帖子

35

积分

LV1

Rank: 1

积分
35
发表于 2017-12-21 01:02:42 | 显示全部楼层
找下发送代码
回复

使用道具 举报

2

主题

4

帖子

70

积分

LV1

Rank: 1

积分
70
发表于 2018-1-28 00:43:23 | 显示全部楼层
有源码么?
话说图加载不出来了诶
[发帖际遇]: wx8336926 乐于助人,奖励 7 贡献. 幸运榜 / 衰神榜
回复

使用道具 举报

1

主题

6

帖子

58

积分

LV1

Rank: 1

积分
58
发表于 2018-2-7 16:20:15 | 显示全部楼层

微博的常用语
[发帖际遇]: Maoyl 乐于助人,奖励 3 贡献. 幸运榜 / 衰神榜
回复

使用道具 举报

1

主题

3

帖子

53

积分

LV1

Rank: 1

积分
53
发表于 2018-4-11 19:36:33 | 显示全部楼层
谢谢楼主的无私奉献 啊!
回复

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|weiecn ( 湘ICP备14002058号 )

GMT+8, 2018-11-20 23:44 , Processed in 0.068574 second(s), 12 queries , Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表