目錄
- 1. 相關連接:
- 2. 具體功能:
- 3. 硬體環境:
- 4. 云平臺環境配置:
- 5. 接線:
- 6. 功能展示:
- 7. 要修改的的地方:
簡介: ESP8266通過MQTT協議將溫濕度資料傳輸至OnenNet云平臺
關鍵詞: OneNet、ESP8266、DHT11、MQTT、LED
1. 相關連接:
- github(原始碼): https://github.com/Mbwide/DHT11_ToOneNetByMqtt
- CSDN:(圖文決議):
- Bilibili(視頻決議):https://www.bilibili.com/video/BV1Vi4y1w7U1
2. 具體功能:
- DHT11采集環境溫濕度資料,ESP8266模塊通過MQTT協議將溫濕度資料傳輸至OnenNet云平臺
- OneNET可以通過云平臺遠程控制LED燈的亮滅
- 串口顯示相關資料資訊
3. 硬體環境:
- 正點原子STM32F103RCT6(正點原子MiniSTM32)
- DHT11溫濕度傳感器
- ESP8266-01S無線模塊
4. 云平臺環境配置:
-
云平臺配置:
- OneNET控制臺—全部產品服務(多協議接入,選MQTT舊版)—添加產品—進入產品(記住產品ID)—設備串列—添加設備(記住鑒權資訊)—創建完成(記住設備ID)
-
云平臺應用設定:
-
添加應用—編輯應用—組件庫中添加折線圖和開關
-
折線圖(資料上傳成功后進行配置): 選擇資料流 — 選擇設備—資料流選擇要顯示的資料(這里選擇溫度,temperature)
-
開關(資料上傳成功后進行配置): 選擇資料流 — 選擇設備—資料流選擇要顯示的資料(這里選擇LED,ledFlag)—開關開值(LEDON)—開關關值(LEDOFF)—EDP不填
-
5. 接線:
-
ESP8266-01S(5根線)
- PA2 RX
- PA3 TX
- PA4 復位
- 3V3 VCC
- GND GND
-
DHT11(3根線)
-
PA6 DATA
-
3V3 VCC
-
GND GND
-
-
LED
- PD2 LED1
6. 功能展示:
-
資料流

-
APP應用管理

-
串口資料

-
原始碼簡要決議

- 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. 要修改的的地方:
-
mqtt.h :
#define PRODUCTID "393773" //自己的產品ID #define DEVICEID "660024974" //自己的設備ID #define AUTHENTICATION "123456" //自己的鑒權資訊(創建設備的時候設定)
-
wifi.h
#define SSID "PPP" //自己的路由器名稱 #define PASS "qaz123qaz" //自己的路由器密碼
-
mqtt.c
sprintf(ServerIP,"%s","183.230.40.39"); //構建服務器域名(ONENET的) ServerPort = 6002; //服務器埠號6002根據平臺地址串列填寫,這里是mqtt協議


轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/240124.html
標籤:其他
