STM32F103RCT6(Mini板)通过MQTT协议上传温湿度数据至OneNET云平台并控制LED灯

   日期:2020-12-25     浏览:263    评论:0    
核心提示:目录1. 相关连接:2. 具体功能:3. 硬件环境:4. 云平台环境配置:5. 接线:6. 功能展示:7. 要修改的的地方:简介: ESP8266通过MQTT协议将温湿度数据传输至OnenNet云平台关键词: OneNet、ESP8266、DHT11、MQTT、LED1. 相关连接:github(源码): https://github.com/Mbwide/DHT11_ToOneNetByMqttCSDN:(图文解析):Bilibili(视频解析):2. 具体功能:DHT11采集环境温

目录

        • 1. 相关连接:
        • 2. 具体功能:
        • 3. 硬件环境:
        • 4. 云平台环境配置:
        • 5. 接线:
        • 6. 功能展示:
        • 7. 要修改的的地方:

简介: ESP8266通过MQTT协议将温湿度数据传输至OnenNet云平台
关键词: OneNet、ESP8266、DHT11、MQTT、LED

1. 相关连接:

  1. github(源码): https://github.com/Mbwide/DHT11_ToOneNetByMqtt
  2. CSDN:(图文解析):
  3. Bilibili(视频解析):https://www.bilibili.com/video/BV1Vi4y1w7U1

2. 具体功能:

  1. DHT11采集环境温湿度数据,ESP8266模块通过MQTT协议将温湿度数据传输至OnenNet云平台
  2. OneNET可以通过云平台远程控制LED灯的亮灭
  3. 串口显示相关数据信息

3. 硬件环境:

  1. 正点原子STM32F103RCT6(正点原子MiniSTM32)
  2. DHT11温湿度传感器
  3. ESP8266-01S无线模块

4. 云平台环境配置:

  1. 云平台配置:

    • OneNET控制台—全部产品服务(多协议接入,选MQTT旧版)—添加产品—进入产品(记住产品ID)—设备列表—添加设备(记住鉴权信息)—创建完成(记住设备ID)
  2. 云平台应用设置:

    • 添加应用—编辑应用—组件库中添加折线图和开关

    • 折线图(数据上传成功后进行配置): 选择数据流 — 选择设备—数据流选择要显示的数据(这里选择温度,temperature)

    • 开关(数据上传成功后进行配置): 选择数据流 — 选择设备—数据流选择要显示的数据(这里选择LED,ledFlag)—开关开值(LEDON)—开关关值(LEDOFF)—EDP不填

5. 接线:

  1. ESP8266-01S(5根线)

    • PA2 RX
    • PA3 TX
    • PA4 复位
    • 3V3 VCC
    • GND GND
  2. DHT11(3根线)

    • PA6 DATA

    • 3V3 VCC

    • GND GND

  3. LED

    • PD2 LED1

6. 功能展示:

  1. 数据流

  2. APP应用管理

  3. 串口数据

  4. 源码简要解析

    • stm32f10x_it.c:中断处理函数
    • usart1.c:与上位机通信
    • usart2.c:与ESP8266通信,串口2接收中断处理上位机发送来的数据
    • timer2.c:定时器2中断用来发送温湿度数据,10S
    • timer3.c:定时器3中断用来发送心跳包(ping,用于保持和服务器连接,长时间没给服务器发送数据会被踢下线),2s和30s两种模式
    • timer4.c:将串口2接收到的服务器数据依次存放在MQTT接收缓存数组中,50ms
    • control.c:控制LED灯,并且发送LED灯开关信号

7. 要修改的的地方:

  1. mqtt.h :

    #define PRODUCTID "393773" //自己的产品ID
    #define DEVICEID "660024974" //自己的设备ID 
    #define AUTHENTICATION "123456" //自己的鉴权信息(创建设备的时候设置)
    

  2. wifi.h

     #define SSID "PPP" //自己的路由器名称
     #define PASS "qaz123qaz" //自己的路由器密码
    

  3. mqtt.c

    sprintf(ServerIP,"%s","183.230.40.39");              //构建服务器域名(ONENET的)
    ServerPort = 6002;                                   //服务器端口号6002
    

    根据平台地址列表填写,这里是mqtt协议

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服