ESP8266-01S使用AT指令连接阿里云

ESP8266(ESP-01S) 简介

ESP-01S 是由安信可科技开发的 Wi-Fi 模块,该模块核心处理器 ESP8266 在较小尺 寸封装中集成了业界领先的 Tensilica L106 超低功耗 32 位微型 MCU,带有 16 位精 简模式,主频支持 80 MHz 和 160 MHz,支持 RTOS,集成 Wi-Fi MAC/ BB/RF/PA/LNA。 ESP-01S Wi-Fi 模块支持标准的 IEEE802.11 b/g/n 协议,完整的 TCP/IP 协议栈。 用户可以使用该模块为现有的设备添加联网功能,也可以构建独立的网络控制器。

ESP8266 是高性能无线 SoC,以最低成本提供最大实用性,为 Wi-Fi 功能嵌入其他 系统提供无限可能。

1.外观尺寸

2.管脚定义

ESP-01S 模组共接出 8 个接口,如管脚示意图,管脚功能定义表是接口定义

ESP-01S 管脚示意图

表1 管脚功能定义

脚序名称功能说明
1GND接地
2IO2GPIO2/UART1_TXD
3IO0GPIO0;下载模式:外部拉低;运行模式:悬空或者外部拉高
4RXDUART0_RXD/GPIO3
5TXDUART0_TXD/GPIO1
6EN芯片使能端,高电平有效
7RST复位,低电平复位,高电平工作(默认高)
8VCC3.3V 供电(VDD);外部供电电源输出电流建议在 500mA 以 上

模式CH_PD(EN)RSTGPIO15GPIO0GPIO2TXD0
下载模式
运行模式

3.硬件连接

USB转TTL模块与ESP8266-01S连接

注意电源接3.3v驱动不了的话就接5v ,TXD接RXD RXD接对应TXD

CH340模块ESP8266-01S
RXDTX
TXDRX
GNDGND
3.3V3.3V
3.3VEN

ESP8266(ESP-01S)AT指令入门指南

ESP8266 系列模组出厂时已默认内置 AT 固件,且默认波特率为 115200,硬件连接好后,即可进行 AT 指令操作。

1.指令说明

AT 指令可以细分为四种类型:

类型指令格式描述
测试指令AT+ <x> =?该命令⽤于该命令⽤于查询设置指令的参数以及取值范围。
查询指令AT+<x>?该命令⽤于返回参数的当前值。
设置指令AT+<x>=<...>该命令⽤于设置⽤户⾃定义的参数值。
执⾏指令AT+<x>该命令⽤于执⾏受模块内部程序控制的变参数不可变的功能。

注意:

• 不是每条 AT 指令都具备上述 4 种类型的命令。

• [ ] 括号内为缺省值,不必填写或者可能不显示。

• 使⽤双引号表示字符串数据 ”string”,例如:AT+CWSAP="ESP756290","21030826",1,4

• 默认波特率为 115200。

• AT 指令必须⼤写,并且以回⻋换⾏符结尾(CR LF)。

命令描述
基本命令
AT                                   测试 AT 启动
AT+GMR  查看版本信息
AT+CWMODE 选择 WIFI 应用模式
AT+RST 重启模块
客户端模式
AT+CWLAP 列出当前可用路由器接入点
AT+CIPSTART    建立 TCP, 连接服务器
AT+CIPCLOSE 关闭 TCP
AT+CIFSR 获取本地 IP 地址
AT+CIPMODE  设置模块传输模式
AT+CIPSEND  发送数据
服务器模式
AT+ CWSAP  查询和设置 AP(server) 模式下的WIFI名称、密码、加密方式
AT+ CWLIF 查看已接入设备的 IP地址
AT+CIPSERVER  配置为服务器默认端口333
AT+CIPMUX 启动多连接
AT+CIPSTO    设置服务器超时时间
2.命令使用例程
1、测试模块连接

指令:AT
响应:OK
不成功经历:
1)模块供电不足,建议用5V供电
2)模块进行一系列WiFi配置后不响应指令

2、查看版本信息

指令:AT+GMR
响应:AT version:1.2.0.0(Jul  1 2016 20:04:45)
SDK version:1.5.4.1(39cb9a32)
Ai-Thinker Technology Co. Ltd.
v1.5.4.1-a Nov 30 2017 15:54:29
OK

3、重启模块:

发送:AT+RST 

响应:OK

4、设置工作模式:

STA 模式:ESP8266 模块通过路由器连接互联网,手机或电脑通过互联网实现对设备的
远程控制。

AP 模式:默认模式 ATK_ESP8266 模块作为热点,实现手机或电脑直接与模块通信,实
现局域网无线控制。

STA+AP 模式:两种模式的共存模式,(STA 模式)即可以通过路由器连接到互联网,并通过互联网控制设备;(AP 模式)也可作为 wifi 热点,其他 wifi 设备连接到模块。这样实现局域网和广域网的无缝切换,方便操作。

AT+CWMODE=1   //Station 模式
AT+CWMODE=2   //SoftAP 模式
AT+CWMODE=3   //Station + SoftAP 模式

发送:AT+CWMODE=1

响应:OK

5、模块的 WIFI 设置

5.1 让模块列出当前环境下存在无线路由器的列表 

发送:AT+CWLAP

响应:+CWLAP:(3,"test",-41,"9e:12:84:0a:f7:9c",11,11,0)

OK

可以找到自己的WiFi

5.2 让模块连上自己的路由器

发送:AT+CWJAP="ssid","pwd" 

<ssid>:字符串参数,接入点名称
<pwd>:字符串参数,密码,最长64字节ASCII

响应:

WIFI CONNECTED
WIFI GOT IP

OK

5.3 检测是否真连上了

发送:AT+CWJAP? 

响应:返回当前选择的AP

+CWJAP:"test","9e:12:84:0a:f7:9c",11,-40

OK

阿里云创建MQTT客户端

新建设备

1、进入阿里云官网阿里云-计算,为了无法计算的价值 (aliyun.com)icon-default.png?t=N7T8https://www.aliyun.com/

2、如果还未注册,则先完成注册。

3、登陆后,点击产品。

4、进入物联网平台后,点击公共实例。如果还没开通,则先开通后进行使用。

5、点击产品,先创建一个产品。

6、在创建完成的产品页面上,添加设备。输入设备名称并确认。

7、输入设备名称,输入完成后点击确认。

8、创建模块,打开刚刚创建的产品,进入选择“功能定义”,编辑草稿

9、选择添加自定义功能,标识符和数据类型根据自己的数据需求设置,其他的配置根据需求配置,设置完之后点击发布上线即可

至此,阿里云物联网平台创建设备完成,接下来获取MQTT连接参数。

获取AT参数

通过上述步骤,你可以获取到阿里云物联网平台上设备的三元组,并进行保存。这些参数将用于在ESP-01S / ESP8266上配置AT指令,实现设备与物联网平台之间的通信。

使用阿里云物联平台配置

使用阿里云物联平台配置软件
链接:https://pan.baidu.com/s/1RZhXZxnb6sJ-o7GEHAPd7w?pwd=1111 
提取码:1111

1、将阿里云的三元组粘贴到指定位置

2、该位置随便填写

3、点击生成

连接阿里云AT指令介绍

注意指令不要含有空格符!!!

  1. AT+RST 复位ESP-01S / ESP8266模块;
  2. AT+CWMODE=3 设置ESP模块为Station+SoftAP模式;
  3. AT+CWJAP=“SSID”,“PWD” 设置ESP模块连接无线网络 *注意双引号为英文;
  4. AT+MQTTUSERCFG=0,1,“NULL”,“username”,“password”,0,0,“” 设置 MQTT 用户属性;
  5. AT+MQTTCLIENTID=0,“clientId” 设置MQTT 的clientId参数;
  6. AT+MQTTCONN=0,“host”,1883,1 连接 MQTT Broker;
  7. AT+MQTTCLEAN 断开MQTT连接。

以上为连接阿里云MQTT服务器需要的配置命令,接下来在阿里云新建设备,获取AT指令需要填充的参数。

使用AT指令连接阿里云

1.连接wifi

AT+RST
AT+CWMODE=3
AT+CWJAP="SSID","Password"   //连接wifi

2.

AT+MQTTUSERCFG=0,1,"NULL","用户名","密码",0,0,""
//这个用户和密码是通过“阿里云物联网平台配置”软件通过设备的三元组配置出来的

响应:OK

3.

AT+MQTTCLIENTID=0,"110022|securemode=3\,signmethod=hmacsha1\,timestamp=112200|"
//AT+MQTTCLIENTID=O,"Clienld"
//clientld第二个参数注意每个逗号后加分隔符”
//例如:原Clienld: test1|securemode=3,signmethod=hmacsha1,timestamp=10l
//逗号前加\': test1|securemode=3,signmethod=hmacsha1\timestamp=10l

响应:OK

4.

AT+MQTTCONN=0,"连接域名",1883,1
//AT+MQTTCONN=O,"连接域名",1883,1//回复:
//+MQTTCONNECTED:0,1,"连接域名" ,"1883","",1

响应:OK

截止到这里,esp8266算是连接上了阿里云平台,正常操作的话做完这步设备应该显示在线

发布Topic//向阿里云平台发送数据

1.首先获取物模型属性上报Topic

在设备已经显示在线的前提下,发送下面AT指令,上报物模型数据

将发送的数据在物模型上面显示

注意:test是设备号,要改为自己的设备,id可以随便写,params后面是标识符和对应值,改变值即可上传不同数据

//将发送的数据在物模型上面显示
AT+MQTTPUB=0,"发布的主题","AJson格式内容",1,0
AT+MQTTPUB=0,"/sys/k00njwvREUr/设备名/thing/event/property/post","{\"method\":\"thing.event.property.post\"\,\"id\":\"123\"\,\"params\":{\"temperature\":35}\,\"version\":\"1.0.0\"}",1,0

订阅主题//从阿里云平台上面获取数据

ESP8266-01S发送AT指令,订阅该Topic

AT+MQTTSUB=0,"订阅的主题",1
//我的就是:AT+MQTTSUB=0,"/sys/k00njwvREUr/xYx-1/thing/service/property/set",1
//xYx-1替换成你的设备名就好了
回复:
OK

点击设置后,ESP-01S会收到数据,物模型数据被改变

至此,可以使用ESP8266实现数据上发给阿里云和阿里云下发数据到ESP8266.

  • 23
    点赞
  • 84
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
您好!要使用ESP8266连接阿里云,您可以通过AT指令来完成。下面是一些基本的步骤: 1. 初始化ESP8266:通过发送AT指令来确保ESP8266模块正常工作。您可以使用串口工具(如Arduino IDE的串口监视器)与ESP8266进行通信。 2. 设置WiFi连接使用AT指令设置ESP8266连接到您的WiFi网络。您需要提供WiFi的SSID和密码。例如,您可以使用以下指令进行设置: AT+CWJAP="your_SSID","your_password" 替换"your_SSID"和"your_password"为您的WiFi网络的名称和密码。 3. 启用SSL/TLS:如果您的阿里云设备要求使用SSL/TLS进行安全通信,您需要启用ESP8266的SSL功能。使用以下指令启用SSL: AT+CIPSSL=1 4. 设置阿里云服务器参数:使用AT指令设置阿里云服务器的IP地址和端口号。例如: AT+CIPSTART="TCP","your_server_IP",your_server_port 替换"your_server_IP"和"your_server_port"为您的阿里云服务器的IP地址和端口号。 5. 发送数据使用AT指令发送数据阿里云服务器。您可以使用AT+CIPSEND指令发送数据。例如: AT+CIPSEND=data_length 替换"data_length"为您要发送的数据的长度(以字节为单位)。 6. 接收数据:您可以使用AT指令阿里云服务器接收数据。例如,使用AT+CIPRECVDATA指令接收数据。 这些是一些基本的步骤,以帮助您通过AT指令连接ESP8266阿里云。请注意,具体的指令和配置可能会因您使用ESP8266模块和阿里云设备而有所不同。请参考相关的文档和资料以获取更详细的指导。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值