目錄
一、機智云介紹
二、固件下載
三、項目例程下載
四、代碼移植
五、代碼編寫準(zhǔn)備(已配置完畢,正式開始編寫代碼)
六、設(shè)備配對與連接
七、NTP(網(wǎng)絡(luò)時間協(xié)議)實現(xiàn)
八、網(wǎng)盤資料鏈接
機智云介紹
廣州機智云物聯(lián)網(wǎng)科技有限公司旗下品牌,全球領(lǐng)先的智能IoT開發(fā)及云服務(wù)平臺,國內(nèi)首個物聯(lián)網(wǎng)自助開發(fā)平臺,第三方物聯(lián)網(wǎng)云平臺代表企業(yè),工業(yè)互聯(lián)網(wǎng)平臺解決方案商,國家高新技術(shù)企業(yè),國家級特色專業(yè)型工業(yè)互聯(lián)網(wǎng)平臺,工信部第五批服務(wù)型制造示范平臺,廣東省專精特新中小企業(yè)、廣東省工業(yè)互聯(lián)網(wǎng)產(chǎn)業(yè)生態(tài)供給資源首批工業(yè)互聯(lián)網(wǎng)平臺服務(wù)商、廣東省工業(yè)互聯(lián)網(wǎng)應(yīng)用服務(wù)平臺供應(yīng)商、廣東省服務(wù)型制造示范平臺,廣州市“四化”賦能重點平臺、廣州市科技創(chuàng)新小巨人、廣州市科技服務(wù)示范機構(gòu)。
固件下載
在這一篇文章中有講到:記錄:esp8266-01/01s如何下載固件(下載教程)_esp8266固件下載-CSDN博客
項目例程下載
1.創(chuàng)建項目
登錄機智云,創(chuàng)建一個賬號,,再創(chuàng)建一個項目
產(chǎn)品名稱可以自定義,其他的按照片里的設(shè)置就行。
2.添加數(shù)據(jù)點
編輯要創(chuàng)建的數(shù)據(jù)點,其中標(biāo)志名命名跟c語言的命名規(guī)則一樣,盡量命名自己看得懂的,后需要用到;顯示名稱可以是中文,數(shù)據(jù)點建立好后可以在網(wǎng)站中看到;由于溫度時模塊檢測再傳到機智云APP中,所以只需要只讀類型就可以。
這個就是建立好的數(shù)據(jù)點,左右拖動進度條可以看到有重新編輯或是刪除數(shù)據(jù)點的功能。
3.獲取標(biāo)準(zhǔn)庫例程,硬件平臺選其他平臺,紅框的產(chǎn)品秘鑰在左上角需要驗證賬號密碼才能獲取,輸入完成后點擊生成代碼包,等待生成完成將他下載下來
4.下載完成后,紅框的部分是我們需要的,還附帶有一份開始指南,有興趣的可以自己研究下
代碼移植
1.移植代碼之前要確保你的MCU具備一個串口負(fù)責(zé)打印信息(調(diào)試),一個串口負(fù)責(zé)與esp8266-01S模塊通信和一個1ms定時的定時器功能。
2.將從機智云下載的例程中的Gizwits和Uilts文件夾復(fù)制到自己的項目文件夾中,并導(dǎo)入到工程里,記得將文件夾的路徑也添加好。
3.然后開始修改gizwits_product.c文件
(1)首先在gizwits_product.c找到這句代碼復(fù)制到main.c文件,在gizwits_product.c中在這代碼前加extern 聲明。
main文件中報錯先不管他。
(2)在gizwits_product.c找到這個mcuRestart函數(shù),在函數(shù)里面加上這兩句話
__set_FAULTMASK(1); // 關(guān)閉所有中斷 NVIC_SystemReset(); // 復(fù)位復(fù)制代碼
由于用到32的庫函數(shù),所以需要在gizwits_product.c文件頂部加上32的頭文件,就不會報錯
(3)將int32_t uartWrite(uint8_t *buf, uint32_t len)函數(shù)里for循環(huán)替換掉
for(i=0; i//這個是使用串口三跟8266模塊通信,可以根據(jù)自己需求改變 while(USART_GetFlagStatus(USART3,USART_FLAG_TC) == RESET); if(i >=2 && buf[i] == 0xFF) { USART_SendData(USART3, 0x55); while(USART_GetFlagStatus(USART3,USART_FLAG_TC) == RESET); } }復(fù)制代碼
至此,gizwits_product.c文件需要修改的地方就都寫完了。
4.我們將兩個串口,1ms定時器代碼加進來
(1)先添加一個time3定時器的初始化文件進來,記得把文件路徑加上哦。
然后加串口1跟串口3初始化文件,我用的串口三跟wifi模塊通信,所以在串口三的中斷函數(shù)里加上紅框的代碼,以及一個機智云頭文件,大家若是串口1跟串口3沒被占用,可以直接無腦復(fù)制我的串口初始化文件進工程,在底部網(wǎng)盤鏈接里哦。
#include "usart3.h"#include "gizwits_product.h"void USART3_IRQHandler(void){ u8 res; if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)//接收到數(shù)據(jù) { res = USART_ReceiveData(USART3); gizPutData(&res, 1); // 數(shù)據(jù)寫入到緩沖區(qū) }}復(fù)制代碼
這篇文章到此為止,剩余章節(jié)內(nèi)容(如代碼編寫準(zhǔn)備、設(shè)備配對與連接、NTP實現(xiàn)以及網(wǎng)盤資料鏈接等)將會在下一篇文章中詳細(xì)介紹,敬請期待。
-
STM32
+關(guān)注
關(guān)注
2270文章
10895瀏覽量
355715 -
NTP
+關(guān)注
關(guān)注
1文章
169瀏覽量
13890 -
IOT
+關(guān)注
關(guān)注
187文章
4202瀏覽量
196674 -
機智云
+關(guān)注
關(guān)注
2文章
587瀏覽量
26392
發(fā)布評論請先 登錄
相關(guān)推薦
評論