国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南

這篇具有很好參考價值的文章主要介紹了STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

哎,上云很簡單的,但是我花了好幾天因為各種莫名其妙的錯誤耽誤了大量時間。所有很有必要總結(jié)一下

咳咳。但是我也比新手好不了多少,以免誤導(dǎo)新人,只教操作,理由核心不闡述,自己csdn找。

一、首先創(chuàng)建個HTTP協(xié)議onenet云平臺(不會,就csdn里找,一堆堆)

對于初學(xué)者,最簡單的第一步,看直接效果,就這幾行代碼,第一行系統(tǒng)初始化,后面初始化2個串口,我因為不能直接將esp8266與串口1(CH340)直接相連,所有轉(zhuǎn)串口2。通過串口助手能看見直接效果。

STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南

二、然后下載到單片機里,打開串口調(diào)式助手(能用就行,安信可有快捷AT指令,csdn找有免費的,但是后來發(fā)現(xiàn)安可信AT指令方便,但是發(fā)送消息不方便,不建議使用,也可能是我不會操作)

AT(準備好了嗎?)

AT+CWMODE=1(有3種模式,區(qū)別csdn找)

AT+CWJAP="0606","12345678"(連接自己熱點,名字,密碼)

AT+CIPSTART="TCP","183.230.40.33",80(連接云平臺,有好幾種不同的)

AT+CIPMODE=1(開透傳)開與不開有區(qū)別的,理由csdn里找,開了簡單操作一些

AT+CIPSEND(準備發(fā)送)

STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南
STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南

安信可發(fā)送消息地方好窄,粘貼代碼過去還不行。我就換了一個正點原子的,csdn或者正點原子官網(wǎng)找,免費的。(如果發(fā)送沒反應(yīng),看看點沒點“換行發(fā)送”,一定要點)

最后發(fā)送下面代碼就可以看見以下結(jié)果,succ成功

STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南
POST /devices/1021097154/datapoints?type=3 HTTP/1.1 
api-key:=uojX7FWUuWZ8cgj=mGRy47Ando=
Host:api.heclouds.com 
Content-Length:20

{"temp_data":19.8} 

模板,記住要改產(chǎn)品ID(1021097154)與api-key,發(fā)到我云平臺上,你們可是看不見哦

長度一定要一致,20指{"temp_data":19.8}長度,不對會報錯,符號也算長度

三、最后你就發(fā)現(xiàn)自己云平臺有數(shù)據(jù)了

STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南

是不是看完發(fā)現(xiàn)很簡單。接下來就是將以上過程變?yōu)榇a形式,就是stm32單片機作用。

四、代碼部分來了,準備好了嗎

1、首先你需要獲取溫濕度的代碼,如果你是其他傳感器,原理相通。(csdn找,一堆堆)

2、上云前初始化代碼(是不是沒看懂,因為只有部分代碼,截圖這一段理由是因為,有沒有發(fā)現(xiàn)跟我們之前手動輸入AT指令一樣的。就是一樣的,不過這是寫在程序里的,不用在執(zhí)行過程時候,我們手動再次敲寫)。上云代碼不多,但是簡化(美化)過后就看著多。

STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南

后續(xù)會提供代碼,實在無法理解原理,最簡單的就是一句一句發(fā)送

特別對于AT+CWJAP延時要充分,然后發(fā)送那6條AT指令,你就做到與上面一堆代碼一樣的事情。簡化(美化)好處,雖然看起來復(fù)雜,但安全性和抗干擾性會更強,但是為了方便學(xué)習(xí)理解,可以使用下面方法(看見busy(忙碌)就要重來過,后面就會直接報錯,重新調(diào)大延時函數(shù),簡單但麻煩)正常全是ok,延時過低就看見busy,簡化與優(yōu)化的好處就體現(xiàn)出來了。

在主函數(shù)或者其他函數(shù)里依順序編寫

Usart_SendString(AT_AT,sizeof(AT_AT));//esp8266連接到那個串口就用那個串口發(fā)送
delay();//延時函數(shù)
Usart_SendString(AT+CWMODE,sizeof(AT+CWMODE));
delay();//延時函數(shù)
。。。。。。(還有4條AT指令)
STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南

3、關(guān)鍵代碼分析(最核心地方)

我們回想一下手動發(fā)送過程中,AT指令結(jié)束后做什么?

沒錯,就是發(fā)送你要傳到云平臺內(nèi)容。

如何實現(xiàn)?構(gòu)造json格式句式(原理和為什么,csdn找)

是不是感覺下面部分很相似,模板構(gòu)造好了一半,但沒有數(shù)據(jù)和長度

POST /devices/1021097154/datapoints?type=3 HTTP/1.1 
api-key:=uojX7FWUuWZ8cgj=mGRy47Ando=
Host:api.heclouds.com 
Content-Length:20

{"temp_data":19.8} 


#define MASSAGE   "POST /devices/1021097154/datapoints?type=3 HTTP/1.1  \
                      \napi-key:=uojX7FWUuWZ8cgj=mGRy47Ando=\
                       \nHost:api.heclouds.com\
                        \nContent-Length:%d\
                        \n\r\n "

數(shù)據(jù)構(gòu)造

void OneNet_SendData(void)
{
    
    char buf[256];//申明一個char類型數(shù)組
    
    memset(buf, 0, sizeof(buf));//清空數(shù)組
    
    OneNet_FillBuf(buf);//核心,構(gòu)建后半塊的數(shù)據(jù)                               
    
    Usart2_SendString(buf,strlen(buf)); //這就是最后我們發(fā)送那一步  
    
}

strcpy,sprintf使用效果,csdn找很簡單

#define DEVID    "1021097154"
#define APIKEY    "=uojX7FWUuWZ8cgj=mGRy47Ando="

void OneNet_FillBuf(char *buf)
{
    char text[24];
    char buf1[128];
    
    memset(text, 0, sizeof(text));
    memset(buf1, 0, sizeof(buf1));
    
    strcpy(buf1, "{");
    
    memset(text, 0, sizeof(text));
    sprintf(text, "\"Temperature\":%d,",(int)dht_data[2]);
    strcat(buf1, text);
    
    memset(text, 0, sizeof(text));
    sprintf(text, "\"Humidity\":%d",(int)dht_data[0]);
    strcat(buf1, text);

    strcat(buf1, "}");
    
    sprintf(buf, "POST /devices/%s/datapoints?type=3 HTTP/1.1\r\napi-key:%s\r\nHost:api.heclouds.com\r\n"
                    "Content-Length:%d\r\n\r\n",
    
                    DEVID, APIKEY, strlen(buf1));
                    
    strcat(buf, buf1);

}

然后就結(jié)束了,結(jié)果就是將上面最開始手動敲代碼過程轉(zhuǎn)化為事先寫好,單片機自己執(zhí)行過程。使用以上代碼就可以實現(xiàn)stm32溫濕度上云。

主函數(shù)代碼,我延時函數(shù)不正常所有看起來多,除去延時函數(shù),主函數(shù)只有6行代碼。

STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南

可以代碼參考,看看優(yōu)化后的邏輯。新手看不懂。需要耐心一行一行讀。

鏈接:https://pan.baidu.com/s/1iK41x2e_0_Gnkm9IKKc0KQ

提取碼:1234文章來源地址http://www.zghlxwxcb.cn/news/detail-451231.html

到了這里,關(guān)于STM32+ESP8266上傳溫濕度到onenet(HTTP)新手易懂指南的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • STM32+ESP8266+APP連接阿里云監(jiān)測環(huán)境溫濕度系列筆記1:阿里云物聯(lián)網(wǎng)平臺配置及數(shù)據(jù)上傳

    STM32+ESP8266+APP連接阿里云監(jiān)測環(huán)境溫濕度系列筆記1:阿里云物聯(lián)網(wǎng)平臺配置及數(shù)據(jù)上傳

    ????????在數(shù)據(jù)傳遞過程中阿里云物聯(lián)網(wǎng)平臺相當(dāng)于服務(wù)器,ESP8266為客戶端,通過路由器連接服務(wù)器時需要在物聯(lián)網(wǎng)平臺創(chuàng)建設(shè)備,具體過程如下: 1. 首先 在物聯(lián)網(wǎng)平臺創(chuàng)建公共實例,并點擊進入, 圖1 2.可見設(shè)備接入物聯(lián)網(wǎng)平臺的整體流程如圖2中紅色方框所示, 接下

    2024年02月04日
    瀏覽(34)
  • 【課設(shè)】/【畢設(shè)】ESP32上傳溫濕度至新版Onenet云平臺并由新版Onenet云平臺下發(fā)命令控制LED燈和其他外設(shè)+uni-APP控制2(STM32-ESP32通用){持續(xù)更新ing}

    【課設(shè)】/【畢設(shè)】ESP32上傳溫濕度至新版Onenet云平臺并由新版Onenet云平臺下發(fā)命令控制LED燈和其他外設(shè)+uni-APP控制2(STM32-ESP32通用){持續(xù)更新ing}

    1.打開上次制作的token獲取文件,如下刪除登錄界面: 2.在刪除的地方輸入下面代碼,點擊運行到內(nèi)置瀏覽器,效果如下: ?3.創(chuàng)建溫度,濕度,LED三個變量并進行綁定: ?4.通過http協(xié)議向OneNet云平臺獲取溫濕度數(shù)據(jù): 先去OneNet云平臺文檔中心獲取接口地址: ? ?將下面代碼替

    2024年04月16日
    瀏覽(27)
  • 【STM32】ESP8266 WiFi模塊實時上報溫濕度及控制LED燈項目筆記

    【STM32】ESP8266 WiFi模塊實時上報溫濕度及控制LED燈項目筆記

    本項目無線通訊模塊使用的是WiFi模塊ESP8266,樂鑫公司推出的高性能、低功耗串口WiFi模塊ESP8266應(yīng)該是使用最廣泛的一種WIFI模塊之一了,它自身帶有高性能的MCU(Microcontroller Unit),因此它既可以通過串口連接為外部MCU提供 WiFi通信功能,也就是我們本項目所用到的功能;當(dāng)然

    2024年01月21日
    瀏覽(38)
  • STM32+ESP8266+QT客戶端上位機顯示DHT11溫濕度與點燈

    STM32+ESP8266+QT客戶端上位機顯示DHT11溫濕度與點燈

    目錄 1、簡介 2、硬件連接 3、上位機源碼 3.1?widget.h 3.2?widget.c? 3.3?顯示圖 ?4、下位機源碼 4.1 cubemax配置 ?4.2 keil源碼 本文使用STM32F103C8T6單片機使用單片機通過ESP8266WIFI模塊與QT設(shè)計的上位機進行通訊,ESP8266設(shè)置AP模式。實現(xiàn)DHT11傳感器溫濕度的顯示與遠程控制LED小燈的亮滅

    2024年02月06日
    瀏覽(68)
  • ESP8266+dht11 連接阿里云 上傳溫濕度

    ESP8266+dht11 連接阿里云 上傳溫濕度

    ESP8266+dht11 連接阿里云 上傳溫濕度 ①在剛開始研究的時候也是一頭霧水,在看了幾天各路大神寫的博客和視頻之后,最終得以實現(xiàn)。 ②接下來讓我詳述一下整個過程 需要編寫代碼,云端創(chuàng)建產(chǎn)品和設(shè)備,還有阿里云的庫文件需要用到 下面讓我們開始吧! 一、創(chuàng)建云端設(shè)備

    2024年01月17日
    瀏覽(28)
  • 2-STM32+ESP8266連接onenet并上傳數(shù)據(jù)(HTTP)

    2-STM32+ESP8266連接onenet并上傳數(shù)據(jù)(HTTP)

    上一篇文章內(nèi)容鏈接為下 1-ESP8266-AT指令初試化及部分基礎(chǔ)知識 2-STM32+ESP8266連接onenet并上傳數(shù)據(jù)(HTTP) ESP8266,onenet云平臺,STM32三部分在結(jié)合使用前最好還是分別學(xué)習(xí)了解一下,效率更高,在開發(fā)過程中哪里有問題就有針對性了。 1、了解8266的基礎(chǔ)知識(模式、初始化、操作

    2023年04月08日
    瀏覽(25)
  • 微信小程序可自定義單片機溫濕度閾值(基于esp32c3+onenet+微信小程序)

    微信小程序可自定義單片機溫濕度閾值(基于esp32c3+onenet+微信小程序)

    ? 前段時間有個粉絲問我能不能出一個微信小程序調(diào)節(jié)閾值的教程,我就下班之余在原來的基礎(chǔ)上改進一下,因為是修改閾值,這里我就用繼電器控制風(fēng)扇、溫度達到一定閾值控制風(fēng)扇啟動來做例子。這個成功了,其他閾值修改都是依樣畫葫蘆啦。 ? 之前博客 :基于物聯(lián)網(wǎng)

    2024年02月07日
    瀏覽(22)
  • ESP32連接巴法云上傳溫濕度,手機APP控制開關(guān)燈

    ESP32連接巴法云上傳溫濕度,手機APP控制開關(guān)燈

    首先我先用 進行編寫esp32代碼 ? #include WiFi.h #include SimpleDHT.h ? //巴法云服務(wù)器地址默認即可 #define TCP_SERVER_ADDR \\\"bemfa.com\\\" //服務(wù)器端口//TCP創(chuàng)客云端口8344//TCP設(shè)備云端口8340 #define TCP_SERVER_PORT \\\"8344\\\" ///****************需要修改的地方*****************/// //WIFI名稱,區(qū)分大小寫,不要寫錯

    2024年02月15日
    瀏覽(28)
  • (Onenet)STM32L+BC20+MQTT協(xié)議傳輸溫濕度,ADC,電壓,GPS數(shù)據(jù)到Onenet物聯(lián)網(wǎng)平臺

    (Onenet)STM32L+BC20+MQTT協(xié)議傳輸溫濕度,ADC,電壓,GPS數(shù)據(jù)到Onenet物聯(lián)網(wǎng)平臺

    1、材料準備 準備以下材料 2、設(shè)備連接 2.1 插入物聯(lián)網(wǎng)卡 首先把BC20核心板從開發(fā)板上拆下來 然后將物聯(lián)卡放置在BC20核心板內(nèi) 物聯(lián)卡放置完成將BC20核心板重新插入到開發(fā)板內(nèi)(注意不要弄錯方向) 同時接入天線 2.2 連接ST-Link仿真器 用3條杜邦線接入STM32L的 DIO、GND、CLK中 另

    2024年02月15日
    瀏覽(33)
  • ESP32上實現(xiàn)環(huán)境溫濕度檢測上傳數(shù)據(jù)并通過微信小程序顯示

    共包含三個步驟 Arduino端代碼? onenet云平臺產(chǎn)品準備? 微信小程序代碼 1. Arduino端代碼如下: #include WiFi.h #include \\\"DHT.h\\\" #include \\\"PubSubClient.h\\\" #include \\\"Ticker.h\\\" #define DHTPIN 17 ? ?? #define DHTTYPE DHT11? ? DHT dht(DHTPIN, DHTTYPE); int god=0; const char *ssid ? ? = \\\"FAST_CAED9A\\\"; const char *password = \\\"13837

    2024年02月11日
    瀏覽(34)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包