精华内容
下载资源
问答
  • ESP8266局域网通信

    2021-04-05 17:37:18
    所有8266都连接到同一热点,选取一个作为tcp server,其他作为tcp clint。 1、服务端配置 AT+CWMODE=1 AT+CWJAP="xxx_1","xxx_2" AT+CIFSR AT+CIPMUX=1 AT+CIPSERVER=1,8086 xxx_1:热点名称 xxx_2:热点密码 ...

    0、思路

    所有8266都连接到同一热点,选取一个作为tcp server,其他作为tcp clint。

    1、服务端配置

    AT+CWMODE=1
    
    AT+CWJAP="xxx_1","xxx_2"
    
    AT+CIFSR
    
    AT+CIPMUX=1
    
    AT+CIPSERVER=1,8086
    

    xxx_1:热点名称

    xxx_2:热点密码

    AT+CIFSR获取STA模式的IP地址,记为xxx_3

    2、客户端配置

    AT+CWMODE=1
    
    AT+CWJAP="xxx_1","xxx_2"
    
    AT+CIPSTART="TCP","xxx_3",8086
    
    AT+CIPMODE=1
    
    AT+CIPSEND
    

    3、客户端->服务端

    AT+CIPSEND后直接发送数据

    4、服务端->客户端

    AT+CIPSEND=0,5表示发送5个字节

    展开全文
  • 本文以esp8266作为STA,以手机WIFI作为AP,电脑端用网络调试助手与esp8266共同连接至手机WIFI并建立TCP连接,操作步骤与我在另一篇博文提到的一致。 下面分别以“esp8266作为TCP客户端”和“esp8266作为TCP服务器”...

    本文以esp8266作为STA,以手机WIFI作为AP,电脑端用网络调试助手与esp8266共同连接至手机WIFI并建立TCP连接,操作步骤与我在另一篇博文提到的一致。

    下面分别以“esp8266作为TCP客户端”和“esp8266作为TCP服务器”两种情况进行实验示范:

    准备工具
    USB转TTL、
    esp8266模块、
    串口调试助手、
    网络调试助手、

    一、esp8266作为TCP客户端

    1、设置工作模式&连接热点

    通过串口发送AT指令来设置esp8266的工作模式,并连接手机WIFI热点。
    这里我们设置为STA模式。(电脑端也记得连上手机热点)(网线建议拔掉)
    初始化配置

    2、建立TCP连接

    这里我们让esp8266作为TCP客户端,电脑端的网络调试助手作为TCP服务器。
    于是,我们要先打开网络调试助手并建立一个TCP服务器。其中,端口号自行设置,(ip地址的话,软件会自动根据电脑的WIFI情况帮你填好,无法人为更改)
    网络调试助手
    紧接着,我们将esp8266连接至网络调试助手建立的服务器上,即建立TCP连接。模块返回连接成功,同时可以看见网络调试助手上显示客户端上线。(注意ip和端口号填写正确,否则无法正确连接)
    在这里插入图片描述

    3、进入透传模式&开始透传

    TCP连接建立之后,就可以进入透传模式,进行数据传输了。
    指令发送完成后,当模块返回>,说明透传开始,接下来由串口助手发送出的数据将不再被认为是AT指令,而会被当作是纯数据,并通过TCP传送到网络助手上。
    开始透传
    我们通过串口向网络调试助手发送“This is a message!”数据,可以看到网络助手原封不动的收到了数据。由于是透传模式,此时如果我们发送“AT”,会被当做是数据发送给网络助手,而并不是指令。

    所以,可以看到,网络助手收到“AT”这个数据,而串口调试助手中,并没有反馈OK,也没有将我们发送的“This is a message!”和“AT”显示出来,再次表明当前是透传模式。

    (同时要注意,从本文开始至此,我们的串口调试助手发送数据时都是勾选“发送新行”的)
    开始透传数据

    4、退出透传

    当数据发送完了,不想再发送数据了,则通过发送+++退出透传模式。此时,请注意,先取消勾选“发送新行”,再发送+++
    发送+++发送+++后,可以看见串口助手和网络助手均无任何反馈,如上图。

    紧接着,我们再次勾选“发送新行”,并通过串口发送AT,可以看到模块返回OK,说明模块退出透传模式,AT被当成了指令而不是数据。如下图:
    成功退出透传
    于是,模块成功退出透传模式。至此,我们就完成了TCP通信的简单实验。

    .
    .
    .

    二、esp8266作为TCP服务器

    下面我们来讲解esp8266作为TCP服务器的情况,相关步骤与上面“esp8266作为TCP客户端”时相似,有细微差别。

    1、设置工作模式&连接热点

    与上面提到的相同,这里略过不讲。

    二、建立TCP连接

    这里我们让esp8266作为TCP服务器,电脑端的网络调试助手作为TCP客户端。
    所以,这一次网络调试助手要建立一个TCP客户端,以便稍后连接至esp8266建立的TCP服务器。

    那么,网络调试助手的客户端参数(ip地址和端口号)怎么设置呢?该设置成多少呢?为了解决这个问题,我们先不忙着操作我们的网络助手,先操作esp8266。

    通过AT指令,我们设置8266为多连接模式(因为我们要让其作为服务器,服务器需满足供多个设备连接的要求,所以是多连接),同时,我们配置8266的端口号(自行定义)。而8266建立的TCP服务器的ip地址,我们通过AT+CIPSTA_CUR?指令查得,返回数据的第一个ip则为我们要的。
    esp8266建立TCP服务器

    TCP服务器建立好之后,接下来我们就用网络助手作为客户端连接,客户端的参数为8266设置的端口号和其ip。连接成功后,模块返回CONNECT。
    TCP连接建立

    3、透传

    8266作为服务器时,不能开启透传模式(并不等于不能透传),我们需要通过AT+CIPSEND=<>,<>指令完成数据的传输,其第一个参数为ID号,即要发送数据给连接此服务器的第几个客户端(注意到CONNECT前的0了吗?),第二个参数为数据长度。注意,编号是从0开始的。
    透传
    大概就是这样。

    P.S. 类似的,其实在上一个模式,当esp8266作为客户端时,也可以使用AT+CIPSEND=<>指令实现透传(注意此时只有一个参数,即数据长度),由于不用选择客户端,所以只有一个参数。

    以上就是本实验的基本内容,再进一步的,与外网建立TCP连接,也是相似的步骤,就不再赘述。

    展开全文
  • ESP8266学习笔记:实现ESP8266局域网通信 现在就以实例入手。工程使用的是IOT_DEMO,据DEMO文档可以知道ESP8266初始工作模式为softAP+station共存的模式。于是这边我们就先以softAP入手,研究下局域网内的通信。...

    ESP8266学习笔记:实现ESP8266的局域网内通信

    现在就以实例入手。工程使用的是IOT_DEMO,据DEMO文档可以知道ESP8266初始工作模式为softAP+station共存的模式。于是这边我们就先以softAP入手,研究下局域网内的通信。

    一、DEMO原理介绍

    画了DEMO的框图来帮助理解。调试PC接入ESP的softAP中,PC端使用curl工具与ESP的webserver进行http的通信,DEMO中展示了GET和POST两种方法。

    乐鑫官方文档推荐采用curl来进行通信调试。非web开发的人员应该对curl这块不熟悉,我用人话给大家描述下:我们都是用浏览器来访问web服务器,浏览器将http等客户协议处理给封装起来,将web服务器上的文档通过解析程序解析出来给我们看。如果将浏览器的控制程序和解析程序都去除掉,只处理http等客户协议,那么它就是curl这个工具了。

    二、curl的安装

    按照官方文档,到http://curl.haxx.se/download.html 进行下载就好了。由于最近confusedbycode官网下载不了,所以就到arcor进行了下载。添加环境变量后,在命令行中输入curl如果能解析命令,说明安装完成了。

    三、利用curl向ESP发送GET方法。

    这里按照官方文档的GET方法进行了个小测试,结果和文档一样。

    原文地址http://www.bieryun.com/1782.html

    展开全文
  • (Arduino)ESP8266通过局域网通信控制LED

    千次阅读 多人点赞 2018-10-12 16:49:46
    要达到的效果是用你的电脑或者手机通过局域网去把信号传输给ESP8266,让8266控制LED灯闪烁。 首先你要下载一个Arduino IDE 其次你要买一个esp8266小板(我用的是esp8266-01) 思路如下 首先,我们要接入...

    接线参考[https://blog.csdn.net/jackhuang2015/article/details/45015691]

    要达到的效果是用你的电脑或者手机通过局域网去把信号传输给ESP8266,让8266控制LED灯闪烁。

    首先你要下载一个Arduino IDE

    其次你要买一个esp8266小板(我用的是esp8266-01)

    思路如下

    首先,我们要接入局域网,那么我们的esp8266和电脑就必须先要处于同一个局域网下,通俗点讲,这俩货要连在同一个wifi下,比如你家的同一个路由器下,好的,esp8266和电脑虽然都连在同一个wifi下,但是咋通信呢,他俩怎么互相找到对方呢,有个常识就是要想通信,一般有一个作为服务端,一个作为客户端,然后给服务端取个名字,客户端通过这个名字去找,这样他俩就能连到一起了,互相握个手,就能开始交谈了,这就是典型的TCP通信,你的电脑也是这么连上百度的服务器的(当然还有路有什么的,目前不关我们事,先不管)。

    开始边撸代码边实验

    电脑通过网络调试助手开一个tcpserver作为服务端,esp8266作为客户端。

    #include <ESP8266WiFi.h>      //加入ESP8266wifi头文件
    
    #define LEDPIN 2                   //GPIO2
    WiFiClient client;
    
    const char *ssid     = "HEXBOT";        //ssid,你家的wifi名称
    const char *password = "HEXBOT01?02?03";//wifi密码
    const char *host = "192.168.0.107";   //改为上图所示的IP地址(改为你自己的)
    const int tcpPort = 8266;//改为上图所示的本地端口号(改为你自己的)
    
    
    void setup()
    {
        Serial.begin(115200);    
        pinMode(LEDPIN,OUTPUT);
        delay(10);
        Serial.println();
        Serial.print("Connecting to ");//会通过usb转tll模块发送到电脑,通过ide集成的串口监视器可以获取数据。
        Serial.println(ssid);
    
        WiFi.begin(ssid, password);//启动
    
         //在这里检测是否成功连接到目标网络,未连接则阻塞。
        while (WiFi.status() != WL_CONNECTED) 
        {
            Serial.println("WiFi connection failed......");
            delay(500);
        }
    
        Serial.println("");
        Serial.println("WiFi connected");
        Serial.println("IP address: ");
        Serial.println(WiFi.localIP());  //WiFi本地IP
    }
    
    
    void loop()
    {
        while (!client.connected())   //若未连接到电脑服务端,则esp8266客户端进行连接。
        {
            if (!client.connect(host, tcpPort))//实际上这一步就在连接服务端,如果连接上,该函数返回true
            {
                Serial.println("connection....");
                delay(500);
    
            }
        }
    
        while (client.available())//available()表示是否可以获取到数据
        {
            char val = client.read();//read()表示从网络中读取数据。
            Serial.println(val);    //打印出来接收到的值
            if(val=='a'){          //pc端发送a和b来控制
               digitalWrite(LEDPIN, LOW);
            }
            if(val=='b')
            {
                digitalWrite(LEDPIN, HIGH);
            }
        }
    }
    

    正常情况下就可以通过发送a和b控制你的小灯了。

    端口如下:

    你可以测量gpio2电平变化。

    如果你把esp8266通过串口把信息发到其他单片机上,那就能做更多的事情了。

    手机连接同上,软件如下。

    在百度上搜索网络调试助手,打开第一个连接。

    选择普通下载就行

    打开后界面如下,打开配置就可以配置了

    展开全文
  • ESP8266服务器模式串口透传编译需要下载8266的库文件后才可以正常 示例如下 #include <ESP8266WiFi.h> #define MAX_SRV_CLIENTS 5 //最大同时联接数,即你想要接入的设备数量,8266tcpserver只能接入五个,哎 ...
  • 上一篇熟悉了编译下载操作,现在就以实例入手。工程使用的是IOT_DEMO,据DEMO文档可以知道ESP8266初始工作模式为softAP+station共存的模式。于是这边我们就先以softAP入手,研究下局域网内的通信
  • ESP8266 物联网 局域网 station
  • 原创声明:该设计来自机智云,设计资料仅供...这部分功能代码其实ESP8266在AP模式下实现client和server的WiFi通信的驱动。 C:光通信部分: 通信部分主要用OOK方式实现信号的调制解调,在硬件驱动稳定工作前提下不难实现。
  • arduino--通过ESP8266模块实现串口接收数据,使用TCP协议进行局域网通信硬件准备端口连接网络调试助手代码功能说明最后 由于调试机器需要打印数据来查看程序是否正常运行,将MCU的串口线接入到电脑需要很长的延长线...
  • 2.ESP8266局域网通信 3.网络知识【AP/STA】【IP]】【UDP】【TCP】【DHCP】【DNS】 4.物联网通信协议【MQTT】 5.百度云,腾讯云,阿里云的介入方式 6.百度云,腾讯云,阿里云的物联网平台使用方式//云下工程师Care 7....
  • 前言:esp8266模块和手机通过路由器组建局域网进行tcp通信esp8266模块设置为客户端,手机端设置为服务器端,路由器为网关,esp8266模块和手机同时接入在一个路由下进行通信。这样的好处是,手机不需要每次连接esp...
  • 最近在使用ESP8266模块,将模块的设置方法在此作个记录。一、ESP8266硬件连接 我买来的模块没有烧写固件直接可以使用,接线参考:http://blog.csdn.net/pop1586082213/article/details/54601983二、模块1设置1、...
  • 首先作为博文开头,简单 esp8266初探:通过AT指令配置模块 ...局域网内的TCP通信esp8266与同一WIFI热点下的设备建立TCP连接 esp8266访问外网服务器:通过与外网服务器建立TCP连接实现信息交互 ...
  • 前面的都只是铺垫,从这篇就开始讲正文啦,如何使用8266进行局域网通信 WiFi通信中有TCP和UDP两种方式,各有优劣,请自行百度 这次用TCP进行示范 我们今天要做的是把8266作为TCPcleint,加入电脑创建的tcpServer...
  • - `在一个局域网内,控制LED有一定的延迟` - `没有配网功能,每次修改WiFi热点账号和密码都需要重新烧录` - 代码里面内置了每个设备的配置信息(`REGION_ID、PRODUCT_KEY、DEVICE_NAME、DEVICE_SECRET`),不利于...
  • ESP8266 tcp client 通信

    千次阅读 2018-04-06 13:44:25
    好的,既然有空今天就再写一篇…… 前面的都只是铺垫,从这篇就开始讲正文啦,如何使用8266进行局域网通信 WiFi通信中有TCP和UDP两种方式,各有优劣,请自行百度 这次用TCP进行示范 我们今天要做的是把8266作为...
  • esp8266+手机端同处一个路由器下组成局域网进行tcp通信的工作模式设定方法 前言:esp8266模块和手机通过路由器(局域网通信,模块设置为客户端,路由器设置为服务器端,模块和手机同时接入在一个路由下进行通信...
  • 本模块很多都是 从博客ESP8266 WIFI模块学习之路 学习来的,在这里非常感谢这位博主...局域网通信 编写一个手机APP,通过socket编程,与WIFI ESP8266进行通信 首先介绍AT指令,什么是AT指令? AT指令就是控制WIFI...
  • 设置 ESP8266 连接远程/局域网 TCP 或 UDP 服务器(连接平台)如TCP Lab 将采集到的传感器数据发送到服务器 根据服务器传输过来的控制指令做出相应动作,如控制 LED 和继电器 STM32程序: 常见操作 ⚫ ESP8266 握手...
  • ESP8266-01WIFI模块——内网通信

    万次阅读 2018-07-04 12:13:24
    欢迎交流和指正!...¨AP 模式:ESP8266模块作为热点,实现手机或电脑直接与模块通信,实现局域网无线控制。 ¨STA+AP 模式:两种模式的共存模式,即可以通过互联网控制可实现无缝切换,方便操作。...
  • arduino(1)--ESP8266配置

    万次阅读 2020-10-16 16:54:42
    arduino通过Esp8266模块实现串口接受数据使用TCP协议进行局域网通信模块arduino配置最后 模块 这里使用的是淘宝购买的ESP8266模块。 arduino配置 我使用的是arduino来编程实现,故需要下载对应的库文件,打开...

空空如也

空空如也

1 2 3 4 5 6
收藏数 103
精华内容 41
关键字:

esp8266局域网通信