• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 如何降低需要監視外部輸入的MCU系統功耗

    如何降低需要監視外部輸入的MCU系統功耗

    作者: 時間:2012-12-07 來源:網絡 收藏

    目前幾乎沒有應用不能耗。對于便攜設備和電池供電設備的設計師來說,這是影響所設計產品的最佳性能與可用性的一個約束條件。在美國國內,諸如能源之星(EnergyStar)等計劃使得消費者能夠更好地理解這個問題,即不僅要設備正常使用時的,而且要待機模式下的。越來越多的人認識到能源是一種寶貴且有限的資源。

    影響總體能耗的主要因素之一是位于核心的微控制器()的性能。因此,設計師一直致力于盡最大可能地減小,他們主要關注三個關鍵領域。

    首先是工作能耗,即在給定能量條件下能夠提供的有用處理工作量,顯然這是非常重要的。可以用每兆赫茲(MHz)的電流消耗來衡量MCU的這個指標,32位Cortex M3處理器的基準數是150μA/MHz,Energy Micro公司的EFM32 Tiny Gecko MCU就能達到這個指標。

    此外,處理器也各種消耗電流盡可能少的睡眠和深度睡眠模式。同樣舉Gecko系列處理器的例子,停止模式下的電流約為20nA。

    然而在實際應用中,影響功耗的第三個因素也許是最重要的。如果處理器在睡眠狀態沒法事件以便知道何時蘇醒,那么睡眠模式幾乎毫無用處。因此在實際使用中,大多數MCU的大部分時間處于中間的“等待”模式。

    這種情形的例子有很多。智能手機只有在來電或有短信時、或者用戶通過人機界面(HMI)傳感器做一些操作時才被喚醒。智能水表的“正常”狀態則是等待水開始流動。

    所有這些情況下的常規解決方案是,MCU定期蘇醒過來‘檢查’其傳感并進行一些運算,以便發現是否有任務要做。這種方法面臨許多挑戰。傳感器測量一般要求產生專門的激勵和采樣圖案,例如,電容傳感器需要用正弦波輸入進行激勵。在功耗和系統響應度之間最好有個權衡:手機“輪詢”觸摸屏界面次數太少的話(比如每隔幾秒)就會給人反應遲鈍的感覺而難以使用。而喚醒過程本身的代價就可能比較高,使得從睡眠模式到工作模式的轉換簡直就是無用功。設計師可能會發現,讓MCU處于較高程度的喚醒狀態比費力管理這些轉換要高效得多。

    一種更好更高效的方法是選擇擁有更加自治的外設與傳感器輸入系統的MCU:這樣,CPU不必醒過來做每次測量。Energy Micro公司的EFM32 Gecko系列MCU就可以提供這樣的系統,它整合了低能耗傳感器接口(LESENSE)和外設反射系統(PRS),不需要CPU干預就能實現與I/O元件的交互。因此EFM32系列MCU可以在睡眠模式下實現許多功能,比如容性觸摸喚醒、金屬物體檢測或阻性傳感器等功能,消耗電流不到1.2μA。

    外設反射系統(PRS)(圖1)允許片載“產生器”外設產生的信號被路由到其它“消費”外設,然后再由那些消費外設根據這些輸入完成相應的操作。“產生器”信號包括模擬比較器和GPIO電平輸出、來自ADC和DAC的“轉換完成”信號、來自計數器/定時器的上溢/下溢信號以及來自UART或USARTR “發/收完成”狀態消息。反射的“消費”外設包括DAC/ADC觸發器、定時器輸入和UART/USART使能輸入。

    圖1:經過配置的EFM32外設反射系統可以根據TIMER0溢出信號啟動一次ADC轉換.jpg
    圖1: 經過配置的EFM32外設反射系統可以根據TIMER0溢出信號啟動一次ADC轉換,同時提供模擬比較器輸出,作為TIMER1中比較/捕捉通道的輸入。

    PRS有8個通道,每個通道都有一個邊沿檢測器,可以用來從電平信號產生邏輯脈沖。每個通道的兩個寄存器(PRS_SWPULSE和PRS_SWLEVEL)允許每個輸出被驅動到軟件定義的電平或邏輯‘1’。

    MCU的LESENSE接口建立在這種自治外設原理之上,允許MCU在不到1?A的睡眠模式下多達16個無源(電阻、電容或電感)傳感器。這種MCU整合了模擬比較器和DAC,并受運行于32kHz時鐘源的定序器控制。比較器輸出可以用于計數、比較或直接用作中斷。要想實現精確測量,可以將DAC用作比較器的參考基準。

    定序器控制哪個引腳連接到比較器、比較器工作了多長時間以及何時應該將輸出送去計數或比較。也可以在比較器工作之前或工作之中利用DAC電壓或GPIO引腳進行激勵。在測量之后,計數器或比較器輸出被緩沖和存儲,以供隨后的處理。

    在掃描完成后,結果將被傳送給一個低功耗的解碼器,這個解碼器具有可配置的“下一個”狀態和觸發條件。這樣便可能捕捉許多傳感器讀數和組合,并且僅在匹配一段時間內的圖案后才喚醒CPU(圖2)。例如,當溫度和濕度傳感器都達到各自的閾值時才觸發喚醒,或者當壓力傳感器連續觸發10次時才喚醒CPU。

    圖2:基于模擬事件的條件喚醒。.jpg
    圖2: 基于模擬事件的條件喚醒。


    上一頁 1 2 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 合川市| 中山市| 朝阳市| 新昌县| 丹巴县| 延长县| 二连浩特市| 阳新县| 霍州市| 库伦旗| 河西区| 成安县| 科技| 体育| 祁阳县| 衢州市| 荣昌县| 芦溪县| 宁蒗| 滦南县| 噶尔县| 唐河县| 玉门市| 凤山县| 屏东县| 探索| 临高县| 获嘉县| 安国市| 台东市| 客服| 洪江市| 顺义区| 枝江市| 镇远县| 本溪市| 万年县| 凌云县| 新建县| 正镶白旗| 新河县|