摘要:使用庫(kù)讀寫(xiě)環(huán)境光照度傳感器本文將教大家如何快速使用庫(kù)讀取光照度數(shù)據(jù)。五實(shí)驗(yàn)樣機(jī)測(cè)試展示通過(guò)之前配置好的面板,通過(guò)涂鴉智能進(jìn)行配網(wǎng)實(shí)時(shí)采集光照度傳感器的數(shù)據(jù)。
本文將教大家如何快速使用STM32HAL庫(kù)讀取光照度數(shù)據(jù)。
實(shí)現(xiàn)功能:通過(guò)App實(shí)時(shí)監(jiān)測(cè)光照度數(shù)據(jù)。
程序下載路徑:demo程序。
1.如下圖創(chuàng)建一個(gè)新工程:
2.如下圖選擇自己現(xiàn)有的STM32開(kāi)發(fā)板進(jìn)行開(kāi)發(fā):
3.配置時(shí)鐘源
如果選擇使用外部高速時(shí)鐘(HSE),則需要在System Core中配置RCC;
如果使用默認(rèn)內(nèi)部時(shí)鐘(HSI),這一步可以略過(guò);
下面工程我使用的是內(nèi)部時(shí)鐘,因此這一步是不需要的。
4.配置串口
NUCLEO-L476RG板載ST-Link并且虛擬了一個(gè)串口,原理圖如下:
使PC的串口與USART2之間連接。(打印日志口,同時(shí)也作為程序下載口)
接下來(lái)開(kāi)始如下圖配置USART2:
使用串口1和涂鴉模組WB3S通信(單片機(jī)和WB3S串口通信,采用透?jìng)鞯哪J剑?,串?配置如下圖所示:
5.配置IIC口
為了采集光照度數(shù)據(jù)(BH1750),單片機(jī)采用I2C協(xié)議和光照度模塊進(jìn)行通信,采用I2C1,配置如下圖所示:
6.配置時(shí)鐘樹(shù)
STM32L4的最高主頻到80M,所以配置PLL,最后使HCLK=80Mhz即可:
7.生產(chǎn)工程設(shè)置
8.代碼生成設(shè)置
最后設(shè)置生成獨(dú)立的初始化文件:
9.生成代碼
點(diǎn)擊GENERATE CODE即可生成MDK-V5工程如下:
10.用KEIL5打開(kāi)生成的代碼,然后開(kāi)始添加自己要實(shí)現(xiàn)的功能函數(shù)。
BH1750 照度檢測(cè)模塊搭載一個(gè)BH1750FVI,BH1750FVI是兩線式串行總線接口(IIC)的16位數(shù)字輸出型環(huán)境光強(qiáng)度傳感器,利用它的高分辨率可以探測(cè)較大范圍內(nèi)的光照強(qiáng)度變化(1lx - 65535lx)。
管腳介紹
名稱 | VCC | GND | SCL | SDA | ADDR |
---|---|---|---|---|---|
功能描述 | 3~5V供電 | 參考地 | IIC時(shí)鐘線 | IIC數(shù)據(jù)線 | 地址線 |
參考BH1750FVI數(shù)據(jù)手冊(cè)進(jìn)行編程。
驅(qū)動(dòng)程序設(shè)計(jì)完成之后就可以開(kāi)始進(jìn)行聯(lián)網(wǎng)功能的設(shè)計(jì)了。
??進(jìn)入涂鴉智能IoT平臺(tái)點(diǎn)擊“創(chuàng)建產(chǎn)品”。這里不用糾結(jié)產(chǎn)品品類的選擇,重點(diǎn)是為了拿到MCU-SDK文件,實(shí)際使用時(shí)可以根據(jù)具體的產(chǎn)品修改sdk內(nèi)部的pid即可適配自己的產(chǎn)品。
例如:點(diǎn)擊創(chuàng)建產(chǎn)品,選擇標(biāo)準(zhǔn)類目>電工>開(kāi)關(guān)。(當(dāng)時(shí)為了測(cè)試用,所以選擇一個(gè)標(biāo)準(zhǔn)類目,也可以在平臺(tái)上選擇其它品類去創(chuàng)建也是可以的)
選擇自定義方案,輸入產(chǎn)品名稱,選擇通訊協(xié)議為WIFI+藍(lán)牙,點(diǎn)擊創(chuàng)建產(chǎn)品。
根據(jù)要實(shí)現(xiàn)的設(shè)備功能,創(chuàng)建好DP功能點(diǎn)。
創(chuàng)建好DP點(diǎn)之后,點(diǎn)擊設(shè)備面板,選擇自由配置面板,方便開(kāi)發(fā)調(diào)試,也可以選擇其它的面板。
面板創(chuàng)建好之后,點(diǎn)擊硬件開(kāi)發(fā),對(duì)接方式選擇“涂鴉標(biāo)準(zhǔn)模組MCU SDK開(kāi)發(fā)”,模組選擇WB3S Wi-Fi&Bluetooth模組(在實(shí)際開(kāi)發(fā)過(guò)程中可選擇手上已有的涂鴉模組即可),固件選擇通用固件。
平臺(tái)產(chǎn)品創(chuàng)建完之后,我們會(huì)獲取到一個(gè)MCU SDK包,之后就可以快速移植到MCU了。
然后在stm32l4xx_it.c文件中添加中斷處理函數(shù),然后包含 mcu_api.h文件并將uart_receive_input()
接口添加進(jìn)去,添加完成后,刪除error注釋即可:
這里我們可以直接注釋掉error提示,在實(shí)際開(kāi)發(fā)過(guò)程中再實(shí)現(xiàn)該功能即可。
一般開(kāi)發(fā)者不涉及生產(chǎn)測(cè)試的話直接刪除注釋不用管就行。
下圖這個(gè)紅色標(biāo)出的函數(shù)是進(jìn)行配網(wǎng)的,通過(guò)NUCLEO-L476開(kāi)發(fā)板上的用戶按鍵進(jìn)行配網(wǎng)連接。
修改完上述幾處地方后,再次編譯,顯示error全部消除,至此涂鴉MCU SDK就已移植完畢,后續(xù)可使用涂鴉模組調(diào)試助手進(jìn)行測(cè)試。涂鴉模組調(diào)試助手的使用方法可參考調(diào)試助手文檔。
通過(guò)之前配置好的面板,通過(guò)涂鴉智能APP進(jìn)行配網(wǎng)實(shí)時(shí)采集光照度傳感器的數(shù)據(jù)。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/121372.html
摘要:本節(jié)我們介紹總線,并使用的總線來(lái)訪問(wèn)加速度傳感器。主循環(huán)內(nèi)添加循環(huán)讀取的代碼編譯下載運(yùn)行,可以看到數(shù)據(jù)輸出變換傳感器方向,可以看到測(cè)出的重力加速度的數(shù)值變化。 本節(jié)我們介紹I2C總線,并使用stm32的I2C總線來(lái)訪問(wèn)加速度傳感器ADXL345。 1)I2C基礎(chǔ)知識(shí) I2C總線通信比較適合...
摘要:帶中文字庫(kù)的是一種具有位位并行線或線串行多種接口方式,內(nèi)部含有國(guó)標(biāo)一級(jí)二級(jí)簡(jiǎn)體中文字庫(kù)的點(diǎn)陣圖形液晶顯示模塊其顯示分辨率為。貼片按鍵模塊支持標(biāo)準(zhǔn)的協(xié)議,完整的協(xié)議棧。以最低成本提供最大實(shí)用性,為功能嵌入其他系統(tǒng)提供無(wú)限可能。 項(xiàng)目簡(jiǎn)介 開(kāi)發(fā)環(huán)境: Keil5.14,CubeMX6.0.1,主...
摘要:如圖所示在了解起始條件和停止條件后,我們?cè)賮?lái)看看在這個(gè)過(guò)程中數(shù)據(jù)的傳輸是如何進(jìn)行的。四參考資料通過(guò)接口實(shí)現(xiàn)溫濕度的采集硬件和軟件區(qū)別 stm32通過(guò)I2C接口實(shí)現(xiàn)...
摘要:總線掛載的外設(shè)有等。外設(shè)地址映射片上外設(shè)區(qū)分為三條總線,根據(jù)外設(shè)速度的不同,不同總線掛載著不同的外設(shè),掛載低速外設(shè),和掛載高速外設(shè)。 第二章 STM32資源介紹 2...
摘要:基于開(kāi)發(fā)的軟件包導(dǎo)師汪禮超學(xué)員崔林威摘要騰訊物聯(lián)網(wǎng)操作系統(tǒng)是騰訊面向物聯(lián)網(wǎng)領(lǐng)域開(kāi)發(fā)的實(shí)時(shí)操作系統(tǒng),具有低功耗,低資源占用,模塊化,可裁剪等特性。圖中斷函數(shù)處理進(jìn)行生成工程配置,按如下界面進(jìn)行配置,最后點(diǎn)擊,并點(diǎn)擊。 ...
閱讀 3482·2023-04-25 14:07
閱讀 3636·2021-09-28 09:35
閱讀 2160·2019-08-30 15:55
閱讀 1478·2019-08-30 13:48
閱讀 2561·2019-08-30 13:16
閱讀 3286·2019-08-30 12:54
閱讀 3297·2019-08-30 11:19
閱讀 1948·2019-08-29 17:17