之前写的:ESP8266 WIFI模块学习之路(3)是WIFI模块向单片机发送信息,我们绝不能满足于仅仅是给单片机下发数据,我们还想自己接受数据,只有这样互相通信才是真正的物联网技术。因此,我就在研究如何实现WIFI模块与单片机互相通信,这样就可以实现基本的物联网控制了。本次博客是解决WIFI模块与Android通信,通过TTL - USB 和PC串口连接(是为了使用PC串口接受数据和发送数据,还有下发命令,便于观察),不研究感觉很难,一旦花时间琢磨就不能了。(注意:这里只是在验证WIFI与Android之间互相通信的功能,单片机并没有参与工作,以后博客中会运用单片机完成一个小的物联网功能)
首先,看看我的设备,如下图:
ESP8266模块:
USB-TTL:
它两直接如何连接可以看我之前写的文章。
将他们进行正确连接,然后连接到电脑上,如图:
打开调试助手,我的助手如图,大家可以自行网上下载:
打开后的页面:
连接成功后,先要验证一下是否正常连接,下发命令:AT,观察是否返回OK,如图:
说明WIFI模块与USB-TTL连接正确,但现在想和手机中的手机助手相互连接还是不可以的,因为ESP8266是需要AT命令控制的,一次需要下发AT进行激活相关功能,我写的简单命令如下:
AT+RST // 重启模块
AT+CWMODE=3 // 选择WIFI应用模式 3:表示AP+Station混合模式,2:AP模式,1:Station模式
AT+CIPMUX=1 // 启动多连接,0:单路连接模式,1:多路连接模式
AT+CIPSERVER=1,8080 // 配置为服务器,1,:表示开启server模式;8080是我们自己设置的端口号,便于监听
AT+CIOBAUD=9600 // 设置波特率,这边我设置的是9600,是为了便于后期单片机使用,该模块默认波特率为115200
将这些命令通过串口下发给WIFI模块,就可以实现手机与WIFI模块连接了,如图:
与手机的连接图(注意:手机一定要连接到WIFI模块的WIFI上,才可以使用手机调试助手连接):
WIFI连接如图:
手机上的调试助手图标如图:
端口激活:
tcp client客户端连接:
成功后,手机给WIFI发了一个信息,如图:
PC端通过串口助手显示的结果,如图:
这个是手机给WIFI模块发送数据,其实我们想用手机接受数据:PC通过串口发给WIFI模块数据,再传到手机端,这个过程如何实现呢?
其实也比较简单,我需要在PC端的串口助手里先下发一个命令,如下:
AT+CIPSEND=? // 发送数据 测试命令 相应OK,则说明发送数据功能正常
AT+CIPSEND=0,10 // 因为之前设置的是多路连接,因此这边需要写成这样的格式,如下图解释:
命令下发完后,就可以输入想要发送的数据了,如图:
手机端接受到的信息,如图:
可见手机和WIFI模块可以正常相互通信了,接下来的博客,我想学习完成一个:让单片机采集数据然后上传给手机进行显示,学习是无止境的,希望一路坚持,收获满满,加油!!!
欢迎大家指正,探讨