0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

機(jī)智云代碼工程移植/采集數(shù)據(jù)上發(fā)/控制數(shù)據(jù)下拉/配置入網(wǎng)

9GxC_IoTMaker ? 來(lái)源:CSDN技術(shù)社區(qū) ? 作者:G.Chenhui ? 2022-04-27 13:47 ? 次閱讀

前言

本項(xiàng)目主要通過(guò)使用STM32F103C8T6作為主控MCU,ESP8266作為數(shù)據(jù)透?jìng)髂K,接入機(jī)智云AIoT云平臺(tái),通過(guò)在線智能產(chǎn)品,實(shí)現(xiàn)了遠(yuǎn)程聯(lián)網(wǎng)、溫濕度監(jiān)測(cè)、APP控制等功能。

上文介紹了“創(chuàng)建云端產(chǎn)品,燒錄Gagent”,“DHT11驅(qū)動(dòng)的編寫”。本文主要介紹,機(jī)智云代碼工程移植、采集數(shù)據(jù)上發(fā)、控制數(shù)據(jù)下拉、配置入網(wǎng)。

機(jī)智云代碼工程移植

前面我們有說(shuō)到,在機(jī)智云平臺(tái)創(chuàng)建產(chǎn)品完成后,生成了一個(gè) MCU 的工程,這個(gè)工程是 CubeMX 所創(chuàng)建的,為了保持一致性,我們選擇使用 HAL 庫(kù)進(jìn)行開發(fā)。

1、創(chuàng)建一個(gè)新的 CubeMX 工程。

芯片選型為:STM32F103RCTx

2、配置相關(guān)外設(shè)

2.1 SYS 配置為 SWD 調(diào)試

b78feeaa-c55c-11ec-bce3-dac502259ad0.png

2.2 使能外部高速時(shí)鐘,并配置為外部晶振

b7ade892-c55c-11ec-bce3-dac502259ad0.png

2.3 配置 TIM3 相關(guān)參數(shù),機(jī)智云的通信協(xié)議中會(huì)用到

b7c89930-c55c-11ec-bce3-dac502259ad0.png

2.4 配置 TIM2 相關(guān)參數(shù),用于實(shí)現(xiàn) us 級(jí)的延時(shí)

b7e5981e-c55c-11ec-bce3-dac502259ad0.png

2.5 配置 USART1,用在 PC 端打印信息

b7fdc7ae-c55c-11ec-bce3-dac502259ad0.png

2.6 配置 USART2,用于連接 ESP-8266

b8193b56-c55c-11ec-bce3-dac502259ad0.png

2.6 配置所用到的 IO 口

兩個(gè)按鍵

  • 兩個(gè)按鍵的公共端配置為 推挽輸出模式、低電平且下拉

  • 兩個(gè)按鍵的自由端配置為 輸入模式、上拉

DHT11 DATA 引腳

  • 配置為 推挽輸出模式、高電平且上拉

LED

  • 配置為 推挽輸出模式、低電平

b8353202-c55c-11ec-bce3-dac502259ad0.png

2.7 配置時(shí)鐘樹

輸入頻率根據(jù)板子上的晶振頻率填寫,我們現(xiàn)在是 8 MHz。接著鎖相環(huán)進(jìn)行 9 倍頻,使 AHB、APB1、APB2 橋的頻率達(dá)到最高。

b859ef2a-c55c-11ec-bce3-dac502259ad0.png

2.8 自動(dòng)生成 CubeMX 工程

最好對(duì)下面的選項(xiàng)進(jìn)行勾選。

b8789a4c-c55c-11ec-bce3-dac502259ad0.png

3、將機(jī)智云平臺(tái)生成的協(xié)議 demo 移植進(jìn)入自己的工程

打開機(jī)智云工程文件夾,將其中的 Gizwits、Hal、Utils 文件夾復(fù)制到自己的工程文件夾中。

b8970a90-c55c-11ec-bce3-dac502259ad0.png

Keil 中將復(fù)制的所有文件導(dǎo)入工程

b8aec342-c55c-11ec-bce3-dac502259ad0.png

b8cf3dfc-c55c-11ec-bce3-dac502259ad0.png

修改 hal_key.c 中的初始化

語(yǔ)句中對(duì)應(yīng)的IO 口和引腳號(hào)改為自己配置好的

b8f6485c-c55c-11ec-bce3-dac502259ad0.png

完成上述步驟后,工程移植成功。

采集數(shù)據(jù)的上發(fā)
voidgizwitsHandle(dataPoint_t*dataPoint)

參數(shù) dataPoint [in]:用戶設(shè)備數(shù)據(jù)點(diǎn)。

該函數(shù)中完成了相應(yīng)協(xié)議數(shù)據(jù)的處理即數(shù)據(jù)上報(bào)的等相關(guān)操作。

自定義相關(guān)代碼如下:

void userHandle(void){  DHT11_Read_Data(&temperature, &humidity); currentDataPoint.valuetemperature = temperature;//Add Sensor Data Collection  currentDataPoint.valuehumidity = humidity;//Add Sensor Data Collection}
控制數(shù)據(jù)的下拉
int8_tgizwitsEventProcess(eventInfo_t*info,uint8_t*gizdata,uint32_tlen)
  • 參數(shù) info [in]:事件隊(duì)列

  • 參數(shù) data [in]:數(shù)據(jù)

  • 參數(shù) len [in]:數(shù)據(jù)長(zhǎng)度

用戶數(shù)據(jù)處理函數(shù),包括wifi狀態(tài)更新事件和控制事件。

自定義相關(guān)代碼如下:

case EVENT_LED:  currentDataPoint.valueLED = dataPointPtr->valueLED;  GIZWITS_LOG("Evt: EVENT_LED %d 
", currentDataPoint.valueLED);if(0x01 == currentDataPoint.valueLED)  {//user handle    PCout(15) = 1; // led燈亮  }else  {//user handle      PCout(15) = 0; // led燈滅  }break;

ESP8266配置入網(wǎng)

有兩種配網(wǎng)的方式:airlink、softap。

這里我們選用 softap 模式進(jìn)行配網(wǎng)。

步驟如下:

1、板子上電后,短按 按鍵2 進(jìn)入 softap 模式

如果想要查詢是否處于 softap 模式,可以將串口連接至 PC,查看打印出的相關(guān)信息。

2、進(jìn)入機(jī)智云 APP 中選擇 熱點(diǎn)配置

填寫要連接的路由器的賬號(hào)和密碼,以及ESP-8266發(fā)出的 WIFI 名前綴和密碼。

b90f0d7e-c55c-11ec-bce3-dac502259ad0.jpg

3、選擇樂(lè)鑫模組

b92db026-c55c-11ec-bce3-dac502259ad0.jpg

4、按照提示,連接前綴為 XPG-GAgent- 的熱點(diǎn)信號(hào)

b9496ff0-c55c-11ec-bce3-dac502259ad0.png

5、等待幾秒鐘時(shí)間

b9731e04-c55c-11ec-bce3-dac502259ad0.jpg

6、連接成功

b98cfb3a-c55c-11ec-bce3-dac502259ad0.jpg

至此,即完成了 ESP-8266 softap 模式的配網(wǎng)。

原文標(biāo)題:基于物聯(lián)網(wǎng)的遠(yuǎn)程溫濕度監(jiān)測(cè)系統(tǒng)(3)機(jī)智云代碼移植

文章出處:【微信公眾號(hào):機(jī)智云開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 代碼移植
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    6889
  • 機(jī)智云
    +關(guān)注

    關(guān)注

    2

    文章

    573

    瀏覽量

    26361
  • ESP8266
    +關(guān)注

    關(guān)注

    50

    文章

    962

    瀏覽量

    44757

原文標(biāo)題:基于物聯(lián)網(wǎng)的遠(yuǎn)程溫濕度監(jiān)測(cè)系統(tǒng)(3)機(jī)智云代碼移植

文章出處:【微信號(hào):IoTMaker,微信公眾號(hào):機(jī)智云開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Wifi固件空降:RealTek_8711AM,硬件工程師也能開發(fā)智能硬件產(chǎn)品啦

    webconfig方式配置入網(wǎng) 5、支持APP在局域網(wǎng)模式下同模組通信 6、支持APP在廣域網(wǎng)模式下同模組通信 7、支持模組同MCU間以9600波特率進(jìn)行串口通信,滿足機(jī)智串口通信協(xié)議 8、支持模組在線OTA升級(jí)
    發(fā)表于 08-18 18:26

    機(jī)智開源框架介紹

    使用GizWifiSDK,連接到機(jī)智的開源物聯(lián)示例APP。該APP針對(duì)的是智能家電中的燈泡類產(chǎn)品,此款產(chǎn)品已滿足用戶基本功能需求,其中包括:1.用戶登錄;2.配置入網(wǎng);3. 搜索設(shè)備列表;4.綁定或解綁設(shè)備
    發(fā)表于 12-27 15:47

    機(jī)智自動(dòng)生成工程移植STM32CubeMX

    的接口,即可將機(jī)智自助生成的STM32方案工程里面的設(shè)備協(xié)議移植過(guò)來(lái),真正實(shí)現(xiàn)全程圖形化配置,傻瓜式開發(fā),這樣既可十分方便的將其它型號(hào)ST
    發(fā)表于 02-07 16:59

    機(jī)智APP開源框架介紹

    :這是一款可以幫助開發(fā)者快速使用GizWifiSDK,連接到機(jī)智的開源物聯(lián)示例APP。該APP針對(duì)的是智能家電中的燈泡類產(chǎn)品,此款產(chǎn)品已滿足用戶基本功能需求,其中包括:1.用戶登錄;2.配置入網(wǎng);3.
    發(fā)表于 02-15 17:56

    史上最詳細(xì)的Arduino uno R3接入機(jī)智教程

    和esp8266無(wú)線WIFI模塊實(shí)現(xiàn)了通過(guò)手機(jī)APP遠(yuǎn)程監(jiān)測(cè)單片機(jī)系統(tǒng)采集數(shù)據(jù)控制一個(gè)LED的亮滅,讀者將體驗(yàn)到使用機(jī)智智能硬件自助開
    發(fā)表于 11-18 14:52

    STM32CubeMX移植機(jī)智自動(dòng)生成代碼詳解

    工程中只有STM32L496ZGT相關(guān)的驅(qū)動(dòng)代碼,若要使用機(jī)智的聯(lián)網(wǎng)能力就需要移植相關(guān)的協(xié)議源碼(即前文介紹的已自動(dòng)生成的STM32F1
    發(fā)表于 12-28 13:50

    STM32+機(jī)智WebSocket實(shí)現(xiàn)物聯(lián)網(wǎng)游戲

    給出整套代碼?! ?  2.3 在機(jī)智部署產(chǎn)品  首先就是在機(jī)智創(chuàng)建一個(gè)自己的產(chǎn)品,以此來(lái)獲取 Product Key,這個(gè)是
    發(fā)表于 07-16 14:30

    基于arduino +機(jī)智物聯(lián)網(wǎng)平臺(tái)的陽(yáng)臺(tái)生態(tài)控制系統(tǒng)的設(shè)計(jì)

    端)到設(shè)備的雙向數(shù)據(jù)通訊,以及配置入網(wǎng)、發(fā)現(xiàn)綁定。軟件層面,機(jī)智提供開發(fā)框架代碼實(shí)現(xiàn)了底層通信協(xié)議的解析封包,通信
    發(fā)表于 07-16 12:28

    基于機(jī)智的嵌入式系統(tǒng)應(yīng)用開發(fā)—空調(diào)遠(yuǎn)程智能控制系統(tǒng)

    控制器程序開發(fā)方法是借用機(jī)智提供的軟件包完成,步驟如下:(1)根據(jù)產(chǎn)品密鑰下載相應(yīng)的軟件工具包,內(nèi)容包括官方提供的移植手冊(cè)和設(shè)備控制程序
    發(fā)表于 06-15 17:49

    正點(diǎn)原子探索版STM32F407,接入機(jī)智代碼移植

    為了給自己的移植過(guò)程做一個(gè)記錄,特此寫下正點(diǎn)原子探索者STM32F497的移植過(guò)程。移植步驟在機(jī)智物聯(lián)網(wǎng)開發(fā)平臺(tái)新建設(shè)備,
    發(fā)表于 06-17 12:12

    機(jī)智創(chuàng)建項(xiàng)目和數(shù)據(jù)

    一、基于STM32+ESP8266+機(jī)智的物聯(lián)網(wǎng)demo1、在機(jī)智創(chuàng)建項(xiàng)目和數(shù)據(jù)集2、WI
    發(fā)表于 08-03 07:45

    ESP8266-01S接入機(jī)智物聯(lián)網(wǎng)平臺(tái)

    就可以成功。 最后進(jìn)入配置成功頁(yè)面GAgent協(xié)議GAgent主要的作用是數(shù)據(jù)轉(zhuǎn)發(fā),是設(shè)備數(shù)據(jù)、機(jī)智、應(yīng)用端(APP)的
    發(fā)表于 04-06 18:32

    基于機(jī)智服務(wù)平臺(tái)的媒體設(shè)備控制系統(tǒng)

    ,設(shè)備做出實(shí)時(shí)響應(yīng)。設(shè)備配置入網(wǎng)基于機(jī)智的媒體設(shè)備控制系統(tǒng)設(shè)計(jì)的設(shè)備配置入網(wǎng)測(cè)試步驟如下:①給設(shè)備
    發(fā)表于 07-31 20:47

    基于物聯(lián)網(wǎng)的遠(yuǎn)程溫濕度監(jiān)測(cè)系統(tǒng)(3)機(jī)智代碼移植

    “創(chuàng)建云端產(chǎn)品,燒錄Gagent”,“DHT11驅(qū)動(dòng)的編寫”。本文主要介紹,機(jī)智代碼工程移植、采集數(shù)據(jù)
    的頭像 發(fā)表于 04-27 11:02 ?1024次閱讀
    基于物聯(lián)網(wǎng)的遠(yuǎn)程溫濕度監(jiān)測(cè)系統(tǒng)(3)<b class='flag-5'>機(jī)智</b><b class='flag-5'>云</b><b class='flag-5'>代碼</b><b class='flag-5'>移植</b>

    基于機(jī)智移植STM32L496G代碼移植

    前言最近我拿到了STM32L496AGMCU,發(fā)現(xiàn)其擴(kuò)展版可以連接ESP-01S。我想嘗試將開發(fā)板連接到我們的機(jī)智,并根據(jù)機(jī)智提供的文
    的頭像 發(fā)表于 09-20 08:05 ?277次閱讀
    基于<b class='flag-5'>機(jī)智</b><b class='flag-5'>云</b><b class='flag-5'>移植</b>STM32L496G<b class='flag-5'>代碼</b><b class='flag-5'>移植</b>