91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

STM32與機(jī)智云連接實(shí)現(xiàn)步驟與技巧(下篇):機(jī)智云代碼移植與優(yōu)化

機(jī)智云 ? 2025-05-23 18:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群



在《STM32機(jī)智云連接實(shí)現(xiàn)步驟與技巧(上篇)》中,我們介紹了硬件連接和通信協(xié)議配置。本篇將重點(diǎn)講解如何將機(jī)智云相關(guān)代碼移植到STM32,完成數(shù)據(jù)上傳和設(shè)備控制。我們將介紹如何在STM32中配置機(jī)智云SDK,集成API,實(shí)現(xiàn)數(shù)據(jù)傳輸和設(shè)備狀態(tài)同步,并分享移植過(guò)程中的常見問(wèn)題及解決方法,幫助開發(fā)者順利實(shí)現(xiàn)云端連接。



機(jī)智云相關(guān)代碼開始移植


相關(guān)移植步驟


1、實(shí)現(xiàn)與模組通信串口驅(qū)動(dòng)


2、實(shí)現(xiàn)串口打印函數(shù)printf();


3、實(shí)現(xiàn)1ms定時(shí)器,gizTimerMs()維護(hù)系統(tǒng)時(shí)間 (提供時(shí)基)


4、實(shí)現(xiàn)MCU復(fù)位函數(shù),模組可請(qǐng)求MCU復(fù)位


5、實(shí)現(xiàn)配置入網(wǎng)功能,調(diào)用gizwitsSetMode()函數(shù)實(shí)現(xiàn)模組配網(wǎng)功能


6、實(shí)現(xiàn)userHandle()數(shù)據(jù)的采集(上行邏輯)


7、實(shí)現(xiàn) gizwitsEventProcess()控制命令的具體執(zhí)行(下行邏輯)


1、WIFI串口接收數(shù)據(jù)寫入緩沖區(qū)


串口包含這個(gè)機(jī)智云的頭文件





35ef1efc-37be-11f0-8605-92fbcf53809c.png

2、實(shí)現(xiàn)uartWrite()串口發(fā)送數(shù)據(jù)


在該文件中找到uartWrite()這個(gè)函數(shù),并在給文件上方添加所用串口的.h文件





36127e24-37be-11f0-8605-92fbcf53809c.png

該函數(shù)修改為

(代碼部分請(qǐng)點(diǎn)擊文末查看原文以獲取詳細(xì)內(nèi)容)

實(shí)現(xiàn)毫秒定時(shí)


對(duì)于使用的定時(shí)器4,中斷里添加相應(yīng)代碼

(代碼部分請(qǐng)點(diǎn)擊文末查看原文以獲取詳細(xì)內(nèi)容)


編譯會(huì)出現(xiàn)警告,找不到該函數(shù),gizTimerMs();函數(shù)沒(méi)有定義,在gizwits_product.h文件中進(jìn)行定義。


實(shí)現(xiàn)芯片復(fù)位函數(shù)


修改該函數(shù)在gizwits_product.h文件中





3629f400-37be-11f0-8605-92fbcf53809c.png

改為下邊的代碼

(代碼部分點(diǎn)擊查看原文進(jìn)行查閱)

實(shí)現(xiàn)配置入網(wǎng)35e663d4-37be-11f0-8605-92fbcf53809c.png


模組支持 SoftAp 和 AirLink 兩種方式配置入網(wǎng), 相應(yīng)接口為 gizwitsSetMode(), 三種模式如下:

WIFI_RESET_MODE 恢復(fù)默認(rèn)出廠設(shè)置

WIFI_SOFTAP_MODE 熱點(diǎn)配網(wǎng)

WIFI_AIRLINK_MODE 手機(jī)廣播配網(wǎng)

在此之前主函數(shù)中添加頭文件





364fd44a-37be-11f0-8605-92fbcf53809c.png35e663d4-37be-11f0-8605-92fbcf53809c.png

以及初始化





368a43c8-37be-11f0-8605-92fbcf53809c.png35e663d4-37be-11f0-8605-92fbcf53809c.png


36a44d7c-37be-11f0-8605-92fbcf53809c.png35e663d4-37be-11f0-8605-92fbcf53809c.png

添加機(jī)智云初始化代碼,本次選擇了airlink配網(wǎng)模式

(代碼部分點(diǎn)擊查看原文進(jìn)行查閱)




協(xié)議處理35e663d4-37be-11f0-8605-92fbcf53809c.png


根據(jù)采集到的數(shù)據(jù),然后調(diào)用函數(shù) gizwitsHandle()、userHandle()上報(bào),函數(shù)位置在gizwits_protocol.c文件中,該函數(shù)主要完成協(xié)議數(shù)據(jù)的處理及數(shù)據(jù)主動(dòng)上報(bào)的相關(guān)操作,到這一步,配網(wǎng)就結(jié)束了,接下來(lái)開始配置自己需要傳輸?shù)臄?shù)據(jù)。

(代碼部分請(qǐng)點(diǎn)擊文末查看原文以獲取詳細(xì)內(nèi)容)



數(shù)據(jù)上下發(fā)配置35e663d4-37be-11f0-8605-92fbcf53809c.png


上發(fā)數(shù)據(jù)用到的函數(shù)為userHandle(),這個(gè)函數(shù)是在gizwits_protocol.c中


如圖,本設(shè)計(jì)一開始將參數(shù)都初始化為0





36c9f748-37be-11f0-8605-92fbcf53809c.png35e663d4-37be-11f0-8605-92fbcf53809c.png

采集數(shù)據(jù)的函數(shù)





36e80c9c-37be-11f0-8605-92fbcf53809c.png35e663d4-37be-11f0-8605-92fbcf53809c.png

該函數(shù)中內(nèi)容作為機(jī)智云app下發(fā)數(shù)據(jù)





37026f1a-37be-11f0-8605-92fbcf53809c.png35e663d4-37be-11f0-8605-92fbcf53809c.png
實(shí)驗(yàn)現(xiàn)象35e663d4-37be-11f0-8605-92fbcf53809c.png





372f6394-37be-11f0-8605-92fbcf53809c.jpg35e663d4-37be-11f0-8605-92fbcf53809c.png


3747c308-37be-11f0-8605-92fbcf53809c.jpg35e663d4-37be-11f0-8605-92fbcf53809c.png



WIFI連接出現(xiàn)的問(wèn)題35e663d4-37be-11f0-8605-92fbcf53809c.png


出現(xiàn)timeout超時(shí),可能原因是主函數(shù)中給了延時(shí)函數(shù),可以嘗試屏蔽掉。如果出現(xiàn)連接數(shù)據(jù)傳輸不穩(wěn)定,WIFI連接容易掉,可以嘗試一下。


注釋掉箭頭指向的這三行





376a92ca-37be-11f0-8605-92fbcf53809c.jpg35e663d4-37be-11f0-8605-92fbcf53809c.png

并且把這個(gè)語(yǔ)句能搜索到的全部注釋掉,可以ctrl+f 搜索都在這兩個(gè)文件中。


這個(gè)主要是串口1打印內(nèi)容(gizwits_product.c,gizwits_protocol.c)





378a0c2c-37be-11f0-8605-92fbcf53809c.png35e663d4-37be-11f0-8605-92fbcf53809c.png


379b7e76-37be-11f0-8605-92fbcf53809c.png35e663d4-37be-11f0-8605-92fbcf53809c.png

聲明:本文內(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)投訴
  • STM32
    +關(guān)注

    關(guān)注

    2310

    文章

    11162

    瀏覽量

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

    關(guān)注

    3

    文章

    647

    瀏覽量

    27775
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

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

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

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

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

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

    /zh-cn/p/92/94)2、實(shí)現(xiàn)步驟  2.1編寫STM32硬件程序    在機(jī)智的協(xié)議頭文件修改自己的設(shè)備信息(在
    發(fā)表于 07-16 14:30

    基于STM32機(jī)智IoT服務(wù)平臺(tái)的智能花盆

    本案例為機(jī)智硬件開發(fā)平臺(tái)入門級(jí)基礎(chǔ)應(yīng)用開發(fā)實(shí)例,開發(fā)者通過(guò)使用機(jī)智自助開發(fā)平臺(tái)(機(jī)智IoT
    發(fā)表于 05-14 15:28

    【開源案例】雙STM32機(jī)智,一起打造“優(yōu)美”的數(shù)字儀表

    G0 和STM32F7的硬件平臺(tái)和機(jī)智AIoT平臺(tái),搭載最新GUI的TouchGFX技術(shù),開發(fā)數(shù)字儀表, 實(shí)現(xiàn)底層的測(cè)量感知,炫酷的顯示,遠(yuǎn)程控制,云端
    發(fā)表于 03-24 12:42

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

    為了給自己的移植過(guò)程做一個(gè)記錄,特此寫下正點(diǎn)原子探索者STM32F497的移植過(guò)程。移植步驟機(jī)智
    發(fā)表于 06-17 12:12

    移植機(jī)智代碼STM32F103

    二期移植機(jī)智代碼STM32F103系列在嗶站錄了兩期簡(jiǎn)單的視頻 ,歡迎大家指正不足,我也是剛剛開始做,還有很多不足,如果視頻中寫的有什么
    發(fā)表于 08-03 07:46

    stm32連接機(jī)智創(chuàng)建

    stm32連接機(jī)智創(chuàng)建機(jī)智產(chǎn)品修改MCU代碼文件給ESP8266燒寫
    發(fā)表于 08-09 09:30

    基于STM32與esp8266機(jī)智app聯(lián)網(wǎng)總結(jié)

    背景是有一個(gè)成熟的STM32機(jī)智項(xiàng)目代碼,記錄一下成功應(yīng)用的過(guò)程。第一步:用ttl轉(zhuǎn)u***串口給esp8266燒錄機(jī)智
    發(fā)表于 04-25 13:40

    機(jī)智官方生成的MCU代碼(hal庫(kù))移植STM32標(biāo)準(zhǔn)庫(kù)教程

    STM32固件庫(kù),以下是移植步驟:生成"通用平臺(tái)代碼"下載并解壓將Gizwits和User復(fù)制進(jìn)自己創(chuàng)建好的STM32工程內(nèi)工程內(nèi)加入文件和
    發(fā)表于 11-06 09:51 ?15次下載
    <b class='flag-5'>機(jī)智</b><b class='flag-5'>云</b>官方生成的MCU<b class='flag-5'>代碼</b>(hal庫(kù))<b class='flag-5'>移植</b>為<b class='flag-5'>STM32</b>標(biāo)準(zhǔn)庫(kù)教程

    基于stm32連接機(jī)智教程

    stm32連接機(jī)智創(chuàng)建機(jī)智產(chǎn)品修改MCU代碼文件給ESP8266燒寫
    發(fā)表于 12-06 19:06 ?10次下載
    基于<b class='flag-5'>stm32</b>的<b class='flag-5'>連接機(jī)智</b><b class='flag-5'>云</b>教程

    教程:ESP8266接入機(jī)智,成功實(shí)現(xiàn)代碼移植

    本文主要以圖文方式介紹了ESP8266接入機(jī)智,生成MCU代碼,并成功移植代碼,實(shí)現(xiàn)APP控制
    的頭像 發(fā)表于 01-12 10:16 ?8132次閱讀
    教程:ESP8266接入<b class='flag-5'>機(jī)智</b><b class='flag-5'>云</b>,成功<b class='flag-5'>實(shí)現(xiàn)代碼</b><b class='flag-5'>移植</b>

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

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

    STM32連接機(jī)智,代碼移植,NTP實(shí)時(shí)時(shí)間獲?。ㄒ唬?/a>

    目錄一、機(jī)智介紹二、固件下載三、項(xiàng)目例程下載四、代碼移植五、代碼編寫準(zhǔn)備(已配置完畢,正式開始編寫代碼
    的頭像 發(fā)表于 11-19 01:01 ?1717次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>連接機(jī)智</b><b class='flag-5'>云</b>,<b class='flag-5'>代碼</b><b class='flag-5'>移植</b>,NTP實(shí)時(shí)時(shí)間獲取(一)

    STM32機(jī)智連接實(shí)現(xiàn)步驟與技巧(上篇)

    通過(guò)STM32機(jī)智連接,開發(fā)者可以實(shí)現(xiàn)設(shè)備的遠(yuǎn)程控制和數(shù)據(jù)管理,提升物聯(lián)網(wǎng)應(yīng)用的智能化水平。本文將介紹
    的頭像 發(fā)表于 05-23 18:10 ?1173次閱讀
    <b class='flag-5'>STM32</b>與<b class='flag-5'>機(jī)智</b><b class='flag-5'>云</b><b class='flag-5'>連接</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>步驟</b>與技巧(上篇)