APP连接ESP8266——采用AT指令

1.主要实验设备及器材

1.1一块ESP8266(如图1)

图 1 ESP8266模块

1.2 一个USB转TTL模块(如图2)

图 2 USB转TTL模块

2.测试ESP8266模块 

2.1连接设备

        WIFI模块与USB转TTL模块进行连接,连接实物图如图3所示,硬件连线框图如图4所示。

图 3 连接实物图

图 4 硬件连接框图

2.2打开串口调试助手

        本次实验使用的软件是XCOM V2.3,默认波特率为115200,停止位为1,数据位为8,校验位为None(如图5)。

图 5 XCOM V2.3

2.3输入测试指令AT

        测试AT启动,返回OK (如图6)

图 6 AT测试

2.4复位指令AT+RST

        输入AT+RST对WiFi模块进行复位操作,若返回ready代表复位成功(如图7)。

图 7 AT+RST

2.5 设置连接模式

        输入AT+CWMODE=mode设置wifi应用模式,返回OK;

        mode: 1.Station模式

        2.AP模式

        3.AP+Station兼容模式

        备注,station:客户端,AP:服务器;

本次测试采用Station模式,输入AT+CWMODE=1指令(如图8)。

图 8 AT+CWMODE=1

2.6连接wifi

        这里输入AT+CWJAP=“BUNFLY loT studio”,“207207207”,返回OK(如图9)。

指令原型为:AT+CWJAP=<ssid>,<pwd> ,ssid就是wifi的名字,pwd就是wifi的密码。

图 9 AT+CWJAP

        完成以上操作,就可以对ESP8266进行AT指令操作。

3.ESP8266操作指令

3.1 ESP8266做服务器操作

        该操作是将ESP8266当做服务器,同手机或其他设备进行连接,操作步骤如下.

3.1.1设置多连接模式

        输入AT+CIPMUX=1,返回OK(如图10)。

图 10 AT+CIPMUX

3.1.2建立服务器

        建立服务器(如图11): AT+CIPSERVER=1,8899(8899是端口号,可以改)

图 11  AT+CIPSERVER

3.1.3查询地址

        输入AT+CIFSR获取ip地址(如图12),这里我们使用STAIP为该ESP8266的ip。

图 12 AT+CIFSR

3.1.4手机APP连接ESP8266

        将手机wifi连接上同ESP8266相同的局域网内,然后打开WIFI串口调试助手,输入IP地址和端口号(如图13),点击确定,当连接上以ESP8266服务器时,页面跳转(如图14),此时手机APP与ESP8266建立连接,进行接收/发送操作,我们通过手机APP向ESP8266发送16进制代码C4 E3 BA C3 D6 D0 B9 FA(你好中国)(如图15)。

图 13 WIFI串口调试助手

图 14 APP收发页面

图 15 串口调试助手接收到APP发送的数据

### 使用ESP8266 AP模式开发App示例教程 #### 一、硬件准备与环境搭建 为了使用ESP8266的AP模式并开发相应的应用程序,首先需要完成以下准备工作: - **硬件设备**:NodeMCU模块或其他基于ESP8266的开发板。 - **软件工具**:安装Arduino IDE,并按照官方指南配置好ESP8266的支持环境[^1]。 通过上述步骤,开发者可以在IDE中编写针对ESP8266的代码。对于AP模式的具体操作命令如下所示: ```plaintext AT+CWMODE=2 ## 配置ESP8266模块为AP模式,开启WiFi热点。 AT+RST ## 重启模块使AP模式生效。 AT+CIPMUX=1 ## 启动多连接功能(如果需要支持多个客户端)。 AT+CIPSERVER=1,8080 ## 模块开启服务器模式,监听端口号设为8080。 AT+CIFSR ## 查看ESP8266当前分配到的IP地址。 ``` 以上指令用于手动控制ESP8266进入AP模式以及设置其基本参数[^3]。 --- #### 二、代码实现 以下是完整的Arduino代码片段,展示如何让ESP8266工作在AP模式下,并提供简单的Web服务接口供外部访问: ```cpp #include <ESP8266WiFi.h> #include <DNSServer.h> const char* ssid = "MyESP8266"; // 设置Wi-Fi热点名称 const char* password = "mypassword"; // 设置Wi-Fi密码 // 创建DNS服务器对象 DNSServer dnsServer; IPAddress apIP(192, 168, 4, 1); void handleRoot() { String message = "<h1>欢迎来到我的ESP8266 Web Server</h1>"; server.send(200, "text/html", message); } void setup() { Serial.begin(115200); WiFi.softAP(ssid, password); // 初始化软接入点(AP Mode) delay(100); IPAddress myIP = WiFi.softAPIP(); Serial.print("AP IP address: "); Serial.println(myIP); DNSHandler(); // 处理DNS请求 server.on("/", handleRoot); // 定义根路径处理函数 server.begin(); // 启动HTTP服务器 Serial.println("HTTP server started"); } void loop() { dnsServer.processNextRequest(); // 轮询DNS请求 server.handleClient(); // 轮询HTTP请求 } ``` 此代码实现了创建一个名为`MyESP8266`的无线网络,并设置了对应的密码保护机制。当有终端设备成功连入该网络后,可以通过浏览器输入默认网关地址(`http://192.168.4.1`)来获取由ESP8266返回的内容页面[^4]。 --- #### 三、移动端应用对接 为了让手机或者其他移动平台能够方便快捷地与这个自定义热点交互,则需进一步设计专属的应用程序(App),通常采用跨平台框架如Flutter或者React Native构建图形界面(UI)部分;而后台逻辑则继续沿用前述提到过的通信协议(HTTP/HTTPS GET & POST 请求方式)[^5]。 例如,在Android Studio项目里添加HttpURLConnection组件发送数据包至指定URL即可轻松达成目标效果——即向运行中的ESP8266传递特定格式化字符串从而触发预定义动作序列执行流程图解说明文档链接待补充... ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值