傳感器板為物聯網的藍牙應用提供解決方案_第1頁
傳感器板為物聯網的藍牙應用提供解決方案_第2頁
傳感器板為物聯網的藍牙應用提供解決方案_第3頁
傳感器板為物聯網的藍牙應用提供解決方案_第4頁
傳感器板為物聯網的藍牙應用提供解決方案_第5頁
已閱讀5頁,還剩3頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、【Word版本下載可任意編輯】 傳感器板為物聯網的藍牙應用提供解決方案 對于物聯網(IoT)設備的開發人員而言,藍牙是一種快速,安全的連接路徑,無線片上系統(SoC)設備已成為實現藍牙設計的現成解決方案。盡管如此,上市時間的壓力仍然在增加,因此即使這些高度集成的解決方案也不盡如人意,需要時間和資源來添加完整物聯網設計所需的硬件和軟件。 本文介紹了藍牙 - 啟用傳感器板為即時物聯網解決方案提供了圣杯,也可以作為家庭或個人使用的定制無線傳感器物聯網設備的根底。然后使用電路板的應用程序和板載MEMS麥克風,使用代碼描述一個真實的傳感實現例如。 模塊簡化藍牙 藍牙低功耗(BLE)提供多個優勢包括低功耗

2、,*全性以及移動平臺(包括智能手機,平板電腦和筆記本電腦)的近乎普遍的可用性。雖然低成本收發器的廣泛應用推動了藍牙連接的快速承受,但這些收發器仍然需要在RF設計方面的重要知識來構建優化設計。 藍牙模塊簡化設計,提供完整的RF子系統,需要工程師簡單地集成MCU和相關的子電路,以構建支持藍牙的系統。諸如Silicon LabsGecko MCU系列等無線SoC是這一發展的舉措,簡化了實施,同時減小了設計尺寸和成本。 例如,SiLabs EFR32MG1P Mighty Gecko MCU集成了32位ARM Cortex-M4內核,存儲器,加密硬件加速器,DC/DC轉換器,多個外設以及用于2.4 G

3、Hz和sub-GHz通信的收發器(圖1)。 圖1:SiLabs EFR32MG1P無線SoC將完整的基于Cortex-M4的系統與先進的收發器相結合,能夠支持sub-GHz和2.4 GHz通信。 (圖片:Silicon Labs) 無線傳感器板 高度集成,高能效的無線SoC提供了現成的解決方案,但仍然讓設計人員負責實現傳感器接口,I/O連接,電源管理和RF。在電池供電的傳感器節點中,每個子系統都需要特別注意以確保的功耗。特別是,當工程師處理包括天線匹配,布局和電磁干擾減輕在內的RF優化問題時,RF設計要求可能會減慢項目進程。 SiLabs Thunderboard Sense板為物聯網應用提供

4、了即時,可擴展的解決方案。該電路板基于EFR32MG1P無線SoC,包括六個傳感器,8-Mbit閃存和高亮度RGB LED,以及用于用戶交互的雙色LED和按鈕(圖2)。此外,Thunderboard Sense可作為參考設計,用于實現基于上述EFR32MG1P Mighty Gecko無線SoC的定制藍牙IoT設計。 圖2:SiLabs Thunderboard Sense主板提供現成的電池供電的藍牙IoT設計,配備了大量傳感器并以全面的軟件環境為后盾。 (圖片:Silicon Labs) Thunderboard Sense的設計僅適用于插入其板載連接器的CR2032紐扣電池。實際上,該設計

5、強調從MCU本身開始的低功耗操作。 EFR32MG1P MCU在工作模式下僅消耗63A/MHz,在DeepSleep模式下僅消耗1.4A,從而保存RAM并保持實時時鐘運行。 然而,在無線傳感器設計中,功率優化要求將電源管理應用于外部傳感器及其調理電路。 Sense板將這些外圍電路分組到電源域,并使用專用的SiLabs EFM8SB MCU作為電源和中斷控制器來管理這些域。 例如,從電路板的內置MEMS麥克風獲取數據, EFR32MG1P MCU將0 x01寫入EFM8SB外設控制器MCU中的ENV_SENSOR_CTRL存放器。 EFM8SB反過來為低壓差(LDO)穩壓器供電,為MEMS麥克風

6、和相關的模擬信號鏈供電(圖3)。接下來,來自EFM8SB的中斷信號使EFR32MG1P MCU通過其集成的模數轉換器(ADC)開始數據采集。 圖3:Thunderboard Sense使用專用的EFM8SB MCU作為電源和中斷控制器,以優化數字和模擬傳感器的功率利用率以及在他們的調理電路中。 (圖片:Silicon Labs) 該板還為高功率應用或開發過程中的線路供電操作提供了替代供電選擇。例如,對于以高強度運行板載LED的應用,您可以通過板內置的連接器添加外部電池。此外,您還可以通過USB連接器或Mini Simplicity連接器為電路板供電。后一種方法還允許使用外部SiLabs調試器的

7、能量監控功能執行的電流測量。 起點 使用Sense板和隨附的應用程序只需幾個簡單的步驟。啟動Thunderboard應用程序(從iOSApp或Google Play商店)后,您只需為Thunderboard Sense主板供電,該主板立即開始通過藍牙開展自我宣傳,同時閃爍綠色LED。當Thunderboard Sense出現在Thunderboard應用程序上時,用戶選擇該設備并繼續使用特定應用程序。 事實上,Thunderboard Sense主板和應用程序為許多物聯網應用程序提供了現成的解決方案。除了作為現成的解決方案使用外,Thunderboard Sense還提供了允許開發人員輕松擴展

8、其功能的功能。除了Micro-B USB連接器和SiLabs的Mini Simplicity連接器外,Thunderboard Sense還提供了20個分線焊盤,開發人員可以使用它們連接其他外圍設備或電路板。分線焊盤包含許多EFR32MG1P MCU I/O引腳,包括I 2 C和SPI引腳,以及主板電源,5 V電壓軌和3.3 V LDO電源軌。設計人員還可以利用EFR32MG1P MCU的靈活引腳布線來訪問其任何集成外設。 除了作為現成解決方案的實用性外,Thunderboard Sense硬件和附帶軟件提供了一個起點用于自定義IoT應用程序。該設計解決了與I 2 C和SPI數字傳感器以及模擬

9、外設和RF天線相關的常見接口問題。為了幫助加速基于Sense板的定制設計的開發,SiLabs為每個外設和IO提供完整的原理圖,包括一個合適的2.4 GHz匹配網絡,將MCU的2.4 GHz RF I/O引腳連接到板載芯片天線。 例如,MEMS麥克風電路的原理圖為MEMS麥克風輸出提供了模擬信號鏈的完整設計。在該電路中,*儀器TLV342S運算放大器用于32.1 dB增益放大器級和用于Knowles SPV1840 MEMS麥克風輸出的一階有源低通濾波器(圖4)。該設計將信號鏈的MIC輸出連接到MCU的12位逐次逼近存放器(SAR)ADC,用于麥克風數據采集。 圖4:除了Thunderboard

10、 Sense工具包的硬件和軟件外,Silicon Labs還提供裝配圖,材料清單和完整的原理圖,例如這種模擬信號調理電路用于MEMS麥克風信號采集。 (圖片:Silicon Labs) 軟件設計和調試 Silicon Labs支持Thunderboard Sense套件,其中包含一系列可用于其Simplicity Studio開發環境的軟件庫。除了用于MCU硬件功能的軟件庫外,該軟件包還包括用于Thunderboard Sense的板級支持包(BSP)以及隨附的例如C代碼。例如,SenseApp模塊提供了一個BLE應用程序,可將數據從其全套傳感器傳輸到智能手機應用程序。 除了作為正常運行的應用

11、程序之外,SenseApp代碼還說明了基于EFR32MG1P MCU實現IoT傳感器設計的關鍵軟件設計模式。例如,BLE堆棧接收實時時鐘,防止其用于應用程序本身的定時事件。 SenseApp例如代碼演示了如何使用MCU軟件定時器定期輪詢各種軟件功能,包括傳感器數據捕獲功能。 在SenseApp應用程序中,主程序啟動設備并開始等待無限循環對于一個事件并調用一個應用程序事件處理程序來處理該事件(清單1)。 復制 while(1) struct gecko_cmd_packet * evt; /*檢查堆棧事件。 */ evt = gecko_wait_event(); /*運行應用程序和事件處理程序

12、。 */ appHandleEvents(evt); 清單1:SenseApp主程序中的實用程序循環不斷循環,將事件移交給事件處理程序以調用傳感器采樣等操作。 (列表:Silicon Labs) 位于app.c中, appHandleEvents 調用 RADIO_bleStackLoopIteration()(位于radio_ble.c中),如果設備是不在藍牙廣告模式。如果連接處于活動狀態,則此例程輪流調用 connectionActiveIteration()(在radio_ble.c中),它提供數據采樣功能。 connectionActiveIteration( )例程檢查板載按鈕的狀態

13、,并定期調用負責更新每個板傳感器數據的服務程序。,此例程檢查麥克風活動,如果麥克風處于活動狀態,它會通過設置聲級并通過調用 MIC_start()函數啟動麥克風數據采集來啟動麥克風數據采集(清單2) sampleBufferLen) sampleCount = sampleBufferLen; else sampleCount = nSamples; if(!dmaBusy) /*配置DMA */ DMADRV_PeripheralMemory(dmadrvChannelId,/channelId dmadrvPeripheralSignal_ADC0_SCAN,/peripheralSign

14、al (void *)sampleBuffer,/* dst (void *)amp;(ADC0 - SCANDATA),/* src true,/dstInc sampleCount,/len dmadrvDataSize2,/size dmaCompleteCallback,/callback NULL);/* cbUserParam adcEnable(true); dmaBusy = true; sampleBufferReady = false; 返回; 清單2:mic.c模塊位于BSP包中,包括麥克風支持例程,包括 MIC_start()例程,通過從MCU的片上ADC啟動DMA傳輸

15、來執行麥克風數據采集。 (列表:Silicon Labs) MIC_start()例程啟動來自MCU的片上ADC( dmadrvPeripheralSignal_ADC0_SCAN)的DMA傳輸,使用dmadrv.c模塊中的 DMADRV_PeripheralMemory 例程。 (如前所述,MEMS麥克風信號鏈的輸出與MCU ADC相連。)該模塊是github上可用的SiLabs emdrv EnergyAware驅動程序庫的一部分。 完成ADC數據采集后序列, dmaCompleteCallback()回調例程禁用進一步的ADC采樣,并為下一輪采樣準備設備。超越這個基本應用程序,開發人員可以構建這

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論