esp8266指令模块
ESP8266本身就是一个mcu,所以它可以有两种用途:
1.当成一个普通的wifi模块,用官方集成的AT指令集进行开发;
2.当成一个集成了wifi功能的mcu,用安信可或其他平台提供的sdk进行深度开发。
由于由浅入深,今天先总结下常用AT指令的开发过程。
先连接好电路,注意将GPIO0脚悬空,用串口调试助手发送AT指令,默认波特率为115200,设置好之后才可以进行正常通讯。
下面我将列出常用的AT指令集:
AT+GMR ----------- ------- 查看版本信息
AT+CWMODE=? ---------- ---响应返回当前可支持哪些模式
AT+CWMODE=《mode》 --- ---参数说明
《mode》
1 StaTIon 模式; 2 AP 模式; 3 AP 兼 StaTIon 模式;
AT+ CWJAP =《ssid》,《 pwd 》 ----参数说明
《ssid》字符串参数,接入点名称
《pwd》字符串参数,密码最长 64 字节 ASCII
AT+CIPSTART=? ----------设置 AT+CIPMUX=0
+CIPSTART:
(《type》取值列表), (《IP address》范围), (《port》范围)
AT+ CIPSERVER=《mode》,《port》--参数说明
《mode》 0 --关闭 server 模式 ; 1 --开启 server 模式
《port》 端口号,缺省值为 333
AT+CIPSTO=《TIme》-------------参数说明
《 TIme》 0~28800 服务器超时时间,单位为 s
AT+CIPMODE=《mode》----------参数说明
《mode》 0-- 非透传模式 ; 1 --透传模式
ESP8266指令集主要分为:基础AT命令、Wife功能AT命令、Top/IP工具箱AT命令
### ESP8266指令详解
#### 一、ESP8266简介及用途
ESP8266作为一款低成本且高性能的Wi-Fi芯片,在物联网领域应用广泛。它不仅可以作为一个普通的Wi-Fi模块来使用,通过集成的AT指令集进行简单的功能开发;也可以作为一个集成了Wi-Fi功能的微控制器(MCU)来进行更为复杂的软件开发。本文主要围绕ESP8266的AT指令进行介绍,旨在帮助初学者快速掌握其基本操作方法。
#### 二、ESP8266基础AT命令
1. **AT**
- **作用**:该命令用于检测与ESP8266模块之间的通信是否正常。若返回“ATOK”,则说明供电、TTL电平转换以及与Wi-Fi模块的通信均正常。
- **示例**:发送“AT”指令至模块,等待响应“ATOK”。
2. **AT+CWMODE=3**
- **作用**:设置ESP8266的工作模式为STA+AP模式,即同时具备客户端和接入点的功能。尽管设置为STA+AP模式,但在实际使用过程中,我们通常仅利用其客户端功能。
- **示例**:发送“AT+CWMODE=3”指令设置工作模式。
3. **AT+RST**
- **作用**:用于对ESP8266模块进行复位操作。复位成功后,模块将回到初始状态,并显示“ready”提示信息。
- **示例**:发送“AT+RST”指令,等待模块复位成功提示。
4. **AT+CWJAP="yourssid","password"**
- **作用**:用于连接指定的无线路由器,需提供SSID(服务集标识符)和密码。
- **示例**:发送“AT+CWJAP=\"yourssid\",\"password\"”指令,确保输入正确的SSID和密码。
5. **AT+CIFSR**
- **作用**:查询ESP8266模块的IP地址信息,包括STA和AP两种模式下的MAC地址和IP地址。
- **示例**:发送“AT+CIFSR”指令查看IP地址。
#### 三、Wi-Fi功能AT命令
1. **AT+CWMODE=?**
- **作用**:查询ESP8266模块当前支持的工作模式选项。
- **示例**:发送“AT+CWMODE=?”指令,了解支持的工作模式。
2. **AT+CWMODE=《mode》**
- **作用**:设置ESP8266的工作模式。参数《mode》代表不同的工作模式:
- 1:Station模式(客户端模式);
- 2:AP模式(接入点模式);
- 3:Station+AP模式(同时具备客户端和接入点功能)。
- **示例**:发送“AT+CWMODE=1”指令设置为Station模式。
3. **AT+CIPMUX=0**
- **作用**:设置多连接模式。设置为0表示单连接模式,这是透传模式的基础设置之一。
- **示例**:发送“AT+CIPMUX=0”指令设置单连接模式。
4. **AT+CIPSTART=?**
- **作用**:用于设置网络连接的相关参数,包括连接类型、IP地址和端口号等。
- **示例**:发送“AT+CIPSTART=?”指令查询可用的设置项。
5. **AT+CIPSTART="TCP","183.230.40.33",80**
- **作用**:建立TCP连接,参数分别为连接类型(TCP)、服务器IP地址和端口号。
- **示例**:发送“AT+CIPSTART=\"TCP\",\"183.230.40.33\",80”指令连接OneNet服务器。
#### 四、Top/IP工具箱AT命令
1. **AT+CIPSERVER=《mode》,《port》**
- **作用**:设置服务器模式,参数《mode》用于控制是否开启服务器模式(0表示关闭,1表示开启),《port》定义端口号。
- **示例**:发送“AT+CIPSERVER=1,333”指令开启服务器模式。
2. **AT+CIPSTO=《Time》**
- **作用**:设置服务器超时时间,单位为秒,取值范围为0~28800。
- **示例**:发送“AT+CIPSTO=300”指令设置服务器超时时间为5分钟。
3. **AT+CIPMODE=《mode》**
- **作用**:设置透传模式或非透传模式,参数《mode》为0表示非透传模式,1表示透传模式。
- **示例**:发送“AT+CIPMODE=1”指令设置透传模式。
4. **AT+CIPSEND**
- **作用**:启动透传发送模式,用于向服务器发送数据。
- **示例**:发送“AT+CIPSEND”指令后,按照指定的数据格式发送数据。
5. **POST/data/datapointsHTTP/1.1**
- **作用**:在透传模式下,用于发送JSON格式的数据流到服务器。
- **示例**:发送JSON数据流前,确保格式正确,包括必要的头部信息如api-key、Host、Content-Length等,并在末尾使用“+++”退出透传模式。
#### 五、总结
通过上述介绍,我们可以了解到ESP8266的AT指令集涵盖了基础设置、Wi-Fi连接以及网络数据传输等多个方面。对于初学者来说,熟练掌握这些指令有助于更好地开发基于ESP8266的应用程序。在实际应用中,还需要根据具体需求选择合适的工作模式和网络连接方式,确保数据能够稳定可靠地传输。希望本文能为您的学习和开发带来帮助。