通过AT指令实现ESP8266模块和TCP服务器的数据传输

                                                      通过 AT 指令实现 ESP8266 模块和 TCP服务器的数据传输

一,总体介绍:

        这篇博文主要讲解如何通过串口调试工具发送AT指令给esp8266-01,实现8266和服务器通讯。这里使用网络调试助手模拟出来一个TCP服务器,然后与WiFi模块相互通讯。由于演示的是局域网内部的通讯,因此需要将网络调试助手所在的PC和模块置于同一局域网内,并且PC的防火墙要关闭,以免模块连接不上服务器。(更好的阅读体验,请移步我的个人博客)

二、具体步骤:

  1,搭建好环境
        准备好局域网环境,WiFi模块连接好电脑,串口调试工具能正常调试,安装好网络调试助手,(注意防火墙是否关闭)

通过AT指令实现ESP8266模块和TCP服务器的数据传输_第1张图片

  2,重启WiFi模块(非必须)
        AT+RST

  3,配置WiFi模组工作模式为单station 模式,(8266有三种工作模式:1 单station模式,2 AP模式,3 两者混合模式)
       AT+CWMODE=1

   4,连接AP(电脑连接的也是这个AP,此处换成你的路由器的ssid和密码)
        AT+CWJAP="ITour","123456789"

   5,查看模块设备的IP地址(非必须)
       AT+CIFSR

   6,设置模块为单连接模式
        AT+CIPMUX=0

   7,建立TCP连接(协议是tcp,端口是在软件里面设置的,IP换成PC的。此处连接成功会有提示)
        AT+CIPSTART="TCP","172.20.10.7",8080

通过AT指令实现ESP8266模块和TCP服务器的数据传输_第2张图片

   8,查询网络的连接状态(非必须)
        AT+CIPSTATUS

   9,设置透传  (如果已经设置过则不用再次设置,再次设置也不会有问题)
        AT+CIPMODE=1 

   10,数据传输  (5代表数据长度大小,此处按照自己的需求进行设置,每输入这条指令就会提示让你输入数据 > )
          AT+CIPSEND=5

通过AT指令实现ESP8266模块和TCP服务器的数据传输_第3张图片

   11,关闭传输
        AT+CIPCLOSE

三、实现原理 --- 8266的透传功能

       ESP8266是一个 UART-WiFi 透传模块,可以将用户的一些物理设备连接到Wi-Fi 无线网络上,进行互联网或局域网通信,实现联网功能。       

      ESP8266 接受到来自串口的数据,并将收到的数据转换成TCP数据包,然后通过网络向指定的主机发送数据。这样服务器就可以接收到数据。服务器也通过网络可以向8266发送TCP数据包,然后模块解析此数据包,将其中的数据通过串口发送给物理设备(本文是串口调试工具)。

 

你可能感兴趣的:(嵌入式)