ESP8266-01S+MQTT+阿里云数据传输

立山  金牌会员 | 2024-6-21 13:11:20 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 701|帖子 701|积分 2103

一、硬件准备

  

  • ESP8266-01S模块一个
  

  • USB转TTL一个
  

  • 软件资料在文章末了
  二、ESP8266-01S固件的烧录

  打开百度云盘资料里的文件夹中的"ESP8266_固件烧录"文件夹
              
           

  • 打开这个文件夹
              
           

  • 打开该文件夹中的exe文件即可,然后打开ESP8266 DownloadTool
              
           3.点击图中箭头所指按钮,选择文件夹中的MQTT固件
              
           4.硬件接线
  ESP8266的TX----->TTL板的RX
  ESP8266的RX----->TTL板的TX
  ESP8266的3V3----->TTL板的3V3
  ESP8266的GND----->TTL板的GND
  ESP8266的GPIO0(IO0)----->TTL板的GND
  5.开始烧录固件
  按照如下设置,选择好对应的串口号(您的串口号与笔者的可能不一样):
              
           开始烧录:
              
           烧录完成:
              
           至此,烧录工作全部完成
  6.测试是否烧录成功
  将GPIO0悬空
  调式猛烈推荐安信可串口调式助手(发送字符串一定要勾选"发送新行")
  发送字符串 AT+GMR 如果模块返回如下数据,则表示固件烧录成功
              
           如果未成功,请您重复上述的烧录工作。
  
  


  三、阿里云平台的设置

  

  • 打开阿里云网站
  网址:阿里云-为了无法计算的代价 (aliyun.com)
              
           如果您未注册账号,请您先注册账号,这里不做过多赘述
  2.打开物联网平台
              
           末了得到如下页面
              
           3.添加产品
              
                       
           按如下就行设置
              
           添加设备
              
                       
                       
           然后点击确定,迩来点击完成
  开始进行功能定义
              
                       
                       
                       
           至此阿里云设置完成
  
  
  四、ESP8266-01S毗连阿里云

  

  • 获取阿里云设置信息
              
                       
           
  2.打开阿里云物联平台设置
              
                       
           3.打开安信可串口助手进行调式
  依次发送以下命令
  1. AT+RST
  2. AT+CWMODE=3
  3. AT+CWJAP="wifi","1234567890"  //这里请填写自己WIFI对应的信息
复制代码
发送命令
  1. AT+MQTTUSERCFG=0,1,"NULL","ESP8266-01S&a1YqApika7X","5CA9602ED56E8F0197AC9B461DC048DE6C606757",0,0,""//这里的ESP8266-01S&a1YqApika7X与5CA9602ED56E8F0197AC9B461DC048DE6C606757请改成自己对应的信息,其中ESP8266-01S&a1YqApika7X为UserName,5CA9602ED56E8F0197AC9B461DC048DE6C606757为Password
复制代码
            
           
发送命令

  1. AT+MQTTCLIENTID=0,"002211|securemode=3\,signmethod=hmacsha1\,timestamp=112200|"
  2. //这里一定在要第二个和第三个逗号前面加上符号 \
  3. 举例:如我复制来的字符串为:
  4. 002211|securemode=3,signmethod=hmacsha1,timestamp=112200|
  5. 则需要发送这个命令:
  6. AT+MQTTCLIENTID=0,"002211|securemode=3\,signmethod=hmacsha1\,timestamp=112200|"
复制代码
            
           发送命令
  1. AT+MQTTCONN=0,"a1YqApika7X.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883,1
  2. //举例:
  3. 如我复制来的字符串为:
  4. a1YqApika7X.iot-as-mqtt.cn-shanghai.aliyuncs.com:1883
  5. 则需要发送命令:
  6. AT+MQTTCONN=0,"a1YqApika7X.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883,1
  7. 具体原因笔者也不清楚
复制代码
            
           至此ESP8266-01S已经成功上云
  正常情况阿里云上的设备会表现在线
              
           开始进行数据上报
              
           订阅主题
  发送命令
  1. AT+MQTTSUB=0,"/sys/a1YqApika7X/${deviceName}/thing/service/property/set",1
  2. ///sys/a1YqApika7X/${deviceName}/thing/service/property/set请改为自己对应的字符串
  3. ${deviceName}请改成ESP8266-01S
  4. 即设备名
复制代码
            
                       
           
  
  上报数据
  发送命令
  1. AT+MQTTPUB=0,"/sys/a1YqApika7X/${deviceName}/thing/event/property/post","{"meth  od":"thing.service.property.set"\,"id":"2012934117"\,"params":{"TEMP":50}\,"version":"1.0.0"}",1,0
  2. /sys/a1YqApika7X/${deviceName}/thing/event/property/post请改为自己对应的字符串
  3. ${deviceName}请改成ESP8266-01S
  4. 即设备名
复制代码
            
           之后我们就可以看到数据已经上报到阿里云
              
           
  相关百度网盘资料:
  链接:https://pan.baidu.com/s/1j4UOZOgT8uV3GRERe_myrg?pwd=ertt
  提取码:ertt
   
  

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

立山

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表