在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

STM32連接機智云,代碼移植,NTP實時時間獲取(二)

機智云 ? 2024-11-20 01:02 ? 次閱讀

STM32機智云連接實現(第二篇)—NTP實時時間獲取與設備配對
在上一篇文章中,我們介紹了如何將STM32與機智云進行連接,并成功實現了基礎的通信功能。在本篇文章中,我們將繼續深入,重點講解如何利用NTP(網絡時間協議)獲取精確的實時時間,并將其集成到我們的STM32應用中。


本文將涵蓋以下幾個方面:
1.代碼編寫準備:我們將分析所需的開發環境配置、庫文件和工具鏈,確保您的開發環境為后續編程做好充分準備。
2.設備配對與連接:詳細講解如何通過機智云平臺完成設備的注冊、配對以及與STM32的無線連接配置。
3.NTP時間同步:介紹如何在STM32上通過NTP協議實現實時時間同步,確保您的設備能夠獲取到準確的時間信息
4.網盤資料下載:為了讓您能夠快速上手,本文還會提供相關的代碼示例和工程文件下載鏈接。

請繼續關注本系列文章,接下來我們將逐步展開,帶您實現STM32與機智云的全面互聯互通。

一、接下來是配置主函數main.c這個文件
(1)首先將機智云,添加的串口,定時器頭文件說明一下

199b656a-a698-11ef-8084-92fbcf53809c.png


(2)在main.c中添加Gizwits_Init函數,對機智云需用到功能進行初始化。()


19b4ae80-a698-11ef-8084-92fbcf53809c.png
(3)在mai函數中對用到的函數進行初始化,串口1是用來打印機智云信息的,可以用串口1查看是否與機智云連接成功。

19c279de-a698-11ef-8084-92fbcf53809c.png
(4)在main.c文件末尾需要添加定時器3的中斷函數,并將機智云的1ms計時函數加進去,但是需要先將機智云1ms函數定義,才能用得到,在gizwits_product.h文件中進行定義,如圖。

19e32d1e-a698-11ef-8084-92fbcf53809c.png
然后在main.c文件中添加定時器3的中斷函數


//定時器 3 中斷服務程序 1ms中斷void TIM3_IRQHandler(void) //TIM3 中斷{ if (TIM_GetITStatus(TIM3, TIM_IT_Update) != RESET) //檢查 TIM3 更新中斷發生與否 { TIM_ClearITPendingBit(TIM3, TIM_IT_Update ); //清除 TIMx 更新中斷標志 gizTimerMs();//系統毫秒定時 }}復制代碼


19f9fc2e-a698-11ef-8084-92fbcf53809c.png


(5)將這兩個函數放到主循環中,機智云才能一直獲取數據

userHandle();//用戶采集 gizwitsHandle((dataPoint_t *)¤tDataPoint);//協議處理復制代碼



1a1f56d6-a698-11ef-8084-92fbcf53809c.png
(6)配對時需要做個按鍵,按鍵按下的時候發送配對指令,讓wifi模塊進入AirLink連接模式。將下面這兩句話加入按鍵判斷中就行了。

gizwitsSetMode(WIFI_AIRLINK_MODE);//Air-link模式接入 復制代碼


1a350b3e-a698-11ef-8084-92fbcf53809c.png
(7)最后有的小伙伴會用到[color=rgb(78, 161, 219) !important]printf函數,使用這個函數在設置里需要勾選圖中選項哦,不然沒辦法使用。

二、現在通過第五點配置好了,現在開始正式寫代碼,嘿嘿~~
1.寫了那么多簡單介紹下使用到的機智云函數

userHandle函數,是用戶在機智云官網定義的一些只讀的數據點,將里面的注釋解開,將自己想要上傳的值幅值進去就行了,例如下圖,紅框中的是你在機智云官網中創建項目時自己定義的變量,需要自己記住,不要在這懵逼了,等號右邊是自己軟件軟件獲取的值。

1a3f60e8-a698-11ef-8084-92fbcf53809c.png
userInit函數是對機智云APP中的值做個初始化,這函數不操作也可以。

gizwitsEventProcess函數是你有添加布爾值的就在這找,里面有些user handle的就是用戶編寫代碼的地方。用if else對布爾值0,1,兩個狀態的判斷,自己根據需求寫就行了。


1a581c6e-a698-11ef-8084-92fbcf53809c.png

三、配對連接
打開機智云APP,按圖片順序來

1a6f7724-a698-11ef-8084-92fbcf53809c.png



1a952352-a698-11ef-8084-92fbcf53809c.png


到這一步先不要點完成上述操作,先按一下設計的進入配對模式的按鍵,可以通過串口一看到進入成功的話會發一條進入ARLINK配對信息。在點完成上述操作,然后就是等待配對成功,配對完成后回調到主界面,顯示自己的設備。設備變灰色就是斷開連接。

1aabac44-a698-11ef-8084-92fbcf53809c.png


四、NTP(網絡獲取實時時間)的實現
順帶講下用機智云獲取NTP實時時間的操作吧
(1)首先定義一個全局變量并引用OLED的頭文件

u8 wifi_sta;復制代碼


1ab56aa4-a698-11ef-8084-92fbcf53809c.png

(2)在userHandle函數中加入這段代碼若是網絡連接成功就多次請求NTP網絡時間,記得網絡時間獲取不要那么快哦,

static u16 t=0; if(wifi_sta) { t++; if(t==500) { t=0; gizwitsGetNTP();//請求 NTP 網絡時間 } }else { if(t!=0) t=0; }復制代碼


1ad592ca-a698-11ef-8084-92fbcf53809c.png


(3)在gizwits_product.c文件中找到gizwitsEventProcess函數,在switch里找到圖中紅框標注的位置將下面代碼幅值進去,最終效果如紅框標注.CASE語句中WIFI_NTP所打印的內容就是網絡時間,將他們復制到自己的OLED顯示語句中就行了,注意哦,只有成功配對后才會顯示是時間。

case WIFI_CON_M2M: wifi_sta = 1; //wifi已連接 break; case WIFI_DISCON_M2M: wifi_sta = 0; //wifi已斷開 break; case WIFI_RSSI: GIZWITS_LOG("RSSI %d\n", wifiData->rssi); break; case TRANSPARENT_DATA: GIZWITS_LOG("TRANSPARENT_DATA \n"); //user handle , Fetch data from [data] , size is [len] break; case WIFI_NTP: GIZWITS_LOG("WIFI_NTP : [%d-%d-%d %02d:%02d:%02d][%d] \n",ptime->year, ptime->month,ptime->day,ptime->hour,ptime->minute,ptime->second,ptime->ntp); OLED_ShowNum(4,1,ptime->year,4); OLED_ShowChar(4,5,'-'); OLED_ShowNum(4,6,ptime->month,1); OLED_ShowChar(4,7,'-'); OLED_ShowNum(4,8,ptime->day,1); OLED_ShowChar(4,9,' '); OLED_ShowNum(4,10,ptime->hour,2); OLED_ShowChar(4,12,'.'); OLED_ShowNum(4,13,ptime->minute,2); break;復制代碼


1aef3e82-a698-11ef-8084-92fbcf53809c.png


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • STM32
    +關注

    關注

    2270

    文章

    10900

    瀏覽量

    356010
  • 代碼
    +關注

    關注

    30

    文章

    4788

    瀏覽量

    68612
  • NTP
    NTP
    +關注

    關注

    1

    文章

    169

    瀏覽量

    13899
  • 機智云
    +關注

    關注

    2

    文章

    590

    瀏覽量

    26410
收藏 人收藏

    評論

    相關推薦

    【阿波羅STM32F767試用體驗】STM32F767三分鐘連接機智硬件平臺(附資料)

    :現在機智可以很方便的生成代碼,包括正點原子全系列開發板:下面是直接生成的STM32F767開發板的代碼下載就可以應用,可惜試了幾次都是這
    發表于 09-29 08:43

    STM32CubeMX移植機智自動生成代碼詳解

    ,使用的是STM32L496ZGT6作為主控,具有超低功耗、豐富外設等特性。)我們可以通過機智自動生成工具生成STM32F103平臺的工程源碼(詳情查看文檔:GoKit3
    發表于 12-28 13:50

    戰艦使用esp8266連接機智顯示配網超時

    原子哥,我今天用戰艦連接機智遇到了一些問題..按照教程使用,創建了數據點,也有app了,但是在用手機連接的時候,連接不成功,顯示配網超時.(手機
    發表于 04-10 22:14

    基于STM32機智IoT服務平臺的智能花盆

    基本完成為了提高連接機智的成功率建議在gizwits_protocol.h修改重次數和超時時間六、測試為啥我把它焊接成這個樣子呢,因為我本來打算給他做一個外殼的...然后把它放到懶
    發表于 05-14 15:28

    用什么函數,可以獲取NTP網絡時間

    用什么函數,可以獲取NTP網絡時間 摘要:在機智自助開發平臺開發一款智能設備有很多在線工具快速實現,若需要
    發表于 08-27 08:25

    在線課程|直播課:機智智能紅外體溫計方案實戰開發

    機智代碼(控制LED燈)入門教程5:STM32F407如何通過機智
    發表于 03-03 11:57

    【開源案例】雙STM32機智,一起打造“優美”的數字儀表

    獲取設備的信息以及對設備進行控制。項目開源,且支持次開發。主要實現功能:產品功能:在MCU設備端,美觀漂亮的溫度和濕度數據的UI展示在機智云云端,實現MCU設備端連接機智
    發表于 03-24 12:42

    移植機智代碼STM32F103

    移植機智代碼STM32F103系列在嗶站錄了兩期簡單的視頻 ,歡迎大家指正不足,我也是剛
    發表于 08-03 07:46

    stm32連接機智創建

    stm32連接機智創建機智產品修改MCU代碼文件給ESP8266燒寫
    發表于 08-09 09:30

    基于STM32與esp8266機智app聯網總結

    背景是有一個成熟的STM32機智項目代碼,記錄一下成功應用的過程。第一步:用ttl轉u***串口給esp8266燒錄機智
    發表于 04-25 13:40

    機智官方生成的MCU代碼(hal庫)移植STM32標準庫教程

    機智官方生成的MCU代碼(hal庫)移植STM32標準庫教程手上剛好有STM32F103VC
    發表于 11-06 09:51 ?15次下載
    <b class='flag-5'>機智</b><b class='flag-5'>云</b>官方生成的MCU<b class='flag-5'>代碼</b>(hal庫)<b class='flag-5'>移植</b>為<b class='flag-5'>STM32</b>標準庫教程

    STM32連接機智(踩雷日記)

    STM32核心板或者開發板一個(板子上帶有LED)網上這種便宜的ESP01S一個USB轉TTL模塊一個、固件燒寫ESP8266燒寫機智的官方固件,才能與
    發表于 12-06 09:06 ?1次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>連接機智</b><b class='flag-5'>云</b>(踩雷日記)

    基于stm32連接機智教程

    stm32連接機智創建機智產品修改MCU代碼文件給ESP8266燒寫
    發表于 12-06 19:06 ?10次下載
    基于<b class='flag-5'>stm32</b>的<b class='flag-5'>連接機智</b><b class='flag-5'>云</b>教程

    基于機智移植STM32L496G代碼移植

    前言最近我拿到了STM32L496AGMCU,發現其擴展版可以連接ESP-01S。我想嘗試將開發板連接到我們的機智上,并根據
    的頭像 發表于 09-20 08:05 ?417次閱讀
    基于<b class='flag-5'>機智</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連接機智代碼移植NTP實時時間獲取(一)

    目錄一、機智介紹、固件下載三、項目例程下載四、代碼移植五、代碼編寫準備(已配置完畢,正式開始
    的頭像 發表于 11-19 01:01 ?302次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>連接機智</b><b class='flag-5'>云</b>,<b class='flag-5'>代碼</b><b class='flag-5'>移植</b>,<b class='flag-5'>NTP</b><b class='flag-5'>實時時間</b><b class='flag-5'>獲取</b>(一)
    主站蜘蛛池模板: a天堂资源在线观看| 天堂在线www天堂中文在线| 特黄级| h在线视频| 四虎三级| 成人av.com| 波多野结衣50连精喷在线| 天天视频免费入口| 中文字幕一区二区三区免费视频 | 热re66久久精品国产99热| 中文字幕11页| 天天插天天透| 免费一级毛片| 天天干天天爽天天操| 天堂8在线天堂资源在线| 欧美成人精品一级高清片| 天天拍天天操| 最新地址四虎www4hutv| 狠狠操婷婷| 天天天狠天天透天天制色| 男女视频在线观看| 久久999| 人人射人人草| 伊人久久大香线蕉综合电影| 国产拍拍视频| 久久伊人操| 亚色网站| 久久婷婷午色综合夜啪| 狠久久| 四虎国产精品永久在线网址| 夜夜欢视频| 163黄页网又粗又长又舒服| 色午夜在线| 日韩一级片在线播放| 亚洲欧洲国产精品你懂的| 精品黄色录像| 欧美黄色片视频| 免费播放一区二区三区| 韩国电影天堂网| xxxx黄色| 韩国十八禁毛片无遮挡|