手機給工程師帶來了麻煩。消費者已經開始期待高速,高分辨率,功能齊全的設備,這些設備可以整天使用微型電池。這是一種不合理的期望,但它現在已經在消費者,工業和醫療行業中共享。超出預期,現在是設計要求。
實現這一目標的答案始于架構層面,為此目前,越來越多的嵌入式設備基于ARM?Cortex?-M系列處理器內核。低功耗MCU供應商Energy Micro現已成為Silicon Labs的一部分,其整個32位MCU產品線基于Cortex-M系列架構,包括基于Cortex-M0的Zero和Tiny Geckos;基于Cortex-M3的Gecko,Leopard和Giant Geckos;到基于Cortex-M4的Wonder Gecko。這些都是裝備精良的小壁虎。
Energy Micro的EFM32WG-STK3800 Wonder Gecko入門套件采用帶有FPU和DSP擴展的48 MHz ARM Cortex-M4內核,并帶有大量傳感器和其他外設(圖1)。在本文中,我們將安裝套件和所有軟件工具,然后使用能量分析器來探索EFM32?WG系列MCU的功能。
圖1:EFM32 Wonder Gecko架構(由Silicon Labs提供)。
ARMs競賽
由于許多供應商在ARM架構上實現標準化,產品差異化的空間似乎有限,但絕對不是這樣。對于初學者,Energy Micro的EFM32 Wonder Geckos增加了所有Cortex-M4選項:單精度浮點單元(FPU); DSP擴展;和八區域存儲器保護單元(MPU)。此外,入門工具包中包含的EFM32WG990F256配備256 KB閃存,32 KB RAM,集成LCD控制器,12位ADC,12位DAC,硬件AES加密,12通道DMA控制器,以及名單還在繼續。基本上,Wonder Gecko是一款功能齊全的高端Cortex-M4。
一個關鍵的差異化因素是Energy Micro對低功耗的詳細關注,這通常是Cortex-M4設計中速度和功能的后退。 Wonder Geckos有五種工作模式(圖2):
運行模式(EM0):電流消耗為160μA/MHz。
睡眠模式(EM1):電流消耗為45μA/MHz。
深度睡眠模式(EM2):電流消耗為900 nA,到EM0的喚醒時間為2μs。
停止模式(EM3):電流消耗為600 nA喚醒EM0的時間為2μs。
關斷模式(EM4):電流消耗為20 nA,EM0的喚醒時間為160μs。
圖2:EFM32能量模式(由Silicon Labs提供)。
考慮到低功耗傳感器應用,Wonder Geckos包含一個低能量傳感器接口(LESENSE),提供可配置和節能的控制方式最多16個外部模擬傳感器,不涉及CPU。這種通用的低能量傳感器接口工作在900 nA深度睡眠模式,可以自動監控幾乎任何類型的模擬傳感器控制方案,包括電容式,電感式和電阻式傳感器。 LESENSE可以設置為監視傳感器值并通過外圍反射系統(PRS)執行操作,以便將此信息傳遞到其他外圍設備或僅在超出可編程閾值時喚醒CPU,從而避免重復出現,浪費能源的CPU喚醒-ups(圖3)。
圖3:EFM32低能量傳感器接口(LESENSE)(由Silicon Labs提供)。
EFM32 MCU中的外圍反射系統使其成為可能可以直接將一個外設連接到另一個外設而不涉及CPU。使用PRS,外設可以產生其他外設可以消耗的信號,在CPU休眠時立即對事件作出反應。例如,ADC可以定期喚醒,從傳感器采樣輸入,檢測它是否在某些參數范圍內,并且只在需要進一步處理時才喚醒CPU。 PRS最大限度地減少了CPU在活動模式下所花費的時間,這可以大大降低應用程序的整體能量狀況。
檢查入門工具包
EFM32 Wonder Gecko入門套件提供了一個方便的平臺,可使用板載指示燈,L/C和觸摸傳感器評估EFM32WG MCU在各種應用中的功能。 LESENSE演示特別有趣,因為它利用了先進的能源監控系統和Simplicity Studio出色的能量感知分析軟件。
高級能量監控器(AEM)使用兩個電流檢測放大器來測量電壓降電源線中的一個小串聯電阻;然后將其轉換為能量感知分析器顯示的當前評級。每個放大器都針對特定范圍內的電流測量進行調整;它們共同能夠測量0.1μA至250 mA的電流,動態范圍為114 dB。每次啟動套件時,AEM都會自動校準,以補償讀出放大器中的失調誤差。
該套件包括電路板; IAR Systems Embedded Workbench for Energy Micro;用于ARM的Atollic?TrueSTUDIO?,用于ARM MCU的C/C ++編譯器和調試器開發套件的30天評估版本;和通常的USB電纜。
電路板沒有涉及設置,但下載和設置所有軟件可能需要一段時間。首先,您需要從公司網站下載Energy Micro的Simplicity Studio。 Simplicity Studio包含眾多工具,包括energyAware Battery,energyAware Commander,energyAware Designer和energyAware Profile,這最后一項本身值得入場。還包括參考手冊,數據表,API文檔,應用說明,套件文檔和許多其他資源。 Simplicity Studio還包含所有Energy Micro套件的示例代碼,但它依賴于第三方編譯器和鏈接器生成目標代碼,energyAware分析器依次分析并以圖形方式顯示。接下來我從CD-ROM安裝了IAR嵌入式工作臺隨附套件。執行此操作時,您可以選擇代碼限制(32K)版本或限時(30天)完整版本。我選擇后者可以利用256 KB的板載RAM。
運行各種演示程序并不容易。啟動Simplicity Studio,單擊Demo圖標,您可以選擇30個演示程序。雙擊其中任何一個將二進制映像下載到MCU并開始運行程序。 energyAware Profiler會自動啟動,為您提供電流消耗的實時圖形指示,以及每個代碼模塊對電源配置文件的貢獻。
使用代碼需要花費更多精力。單擊Simplicity Studio中的示例,選擇工具包,然后選擇要檢查的程序。單擊Source和Simplicity將此信息傳遞給Embedded Workbench,后者在其源瀏覽器中顯示項目文件。或者,您可以跳過Simplicity Studio并啟動Embedded Workbench,從Information Center屏幕上的Example Projects按鈕中選擇適當的項目。進入Embedded Workbench后,創建項目,單擊Download/Debug按鈕,然后按Go運行程序。
雖然您可以在Embedded Workbench中調試程序,但您需要單獨運行Simplicity Studio以監視其操作。首先在Embedded Workshop中構建了觸摸屏程序,然后我從Simplicity Studio打開了energyAware Profiler,選擇了Wonder Gecko,選擇了Ffile/Load Object File,然后點擊了Run圖標。當我用手指觸摸觸摸屏界面時,我可以看到電流消耗從深度睡眠模式(規格= 900 nA)的大約1μA變為激活模式(160μA/MHz x 48 MHz)的大約7 mA。檢查能量曲線,LCD_SyncBusyDelay消耗了87%的能量,而CAPLESENSE_getSliderPosition只消耗了5%(圖4和附圖)。由于一個代碼模塊消耗了90%的能量,這是我第一次看到如何使代碼更高效。
圖4:EnergyAware Profiler跟蹤觸摸屏程序。
-
處理器
+關注
關注
68文章
19488瀏覽量
231542 -
mcu
+關注
關注
146文章
17401瀏覽量
353260 -
觸摸屏
+關注
關注
42文章
2322瀏覽量
116983
發布評論請先 登錄
相關推薦
偏振分析器
CCS中性能分析器profile的使用?
回收Fluke 434-II 435-II 回收437-II電能量分析儀
VEE Pro 9.3和HP8757標量分析器編譯vxe“錯誤801”
回收原裝福祿克FLUKE438-2電能質量和能量分析儀
協議分析器在WLAN中的應用
靜態代碼分析器
基于SM3的動態令牌的能量分析攻擊方法
密碼芯片時域互信息能量分析

評論