精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

AliOS Things電源管理框架怎么滿足物聯網設備低功耗需求

電子設計 ? 2018-10-29 08:57 ? 次閱讀

AliOS Things電源管理框架使用介紹,主要針對物聯網設備低功耗需求。

一、電源管理框架簡介

電源管理框架的目的在于節約CPU的功耗。傳統上,當操作系統處于空閑狀態時,比如所有用戶任務和系統任務處于阻塞狀態,將執行idle task。idle task的通常做法是一個while(1)空循環,從匯編視角看是不斷執行跳轉指令,也就是說當操作系統空閑時,CPU將處于空轉狀態。使能電源管理框架后,當系統進入idle task后,將設置CPU進入低功耗狀態,從而節省CPU的功耗。

AliOS Things電源管理框架具有如下特點:

(1)應用配置電源管理框架并添加初始化代碼后,整個框架的運行對應用透明,用戶無需為了支持電源管理框架而修改應用代碼;

(2)支持多級低功耗狀態;

在某些MCU上,根據不同的節電程度和喚醒時間分為多級睡眠,電源管理框架提供了對該特性的支持,在進入低功耗狀態時將根據睡眠時間和節電程度選擇最佳睡眠等級。

(3)支持tickless機制

當MCU決定進入低功耗狀態時,將關閉系統tick中斷,并在醒來的時候恢復系統tick中斷并補償睡眠過程中丟失的tick數。這種策略通過減少系統時鐘中斷來最大程度降低系統空閑時的功耗。

(4)支持精簡的低功耗模式

當MCU進入低功耗后,不關閉系統tick中斷,系統tick也能喚醒系統。它的優點是實現簡單,但當系統長時間空閑時,由于系統時鐘頻繁喚醒系統,不利于節能。

在某基于nrf52832 MCU的開發板上測試電源管理框架的運行效果如下:

在普通運行模式下nrf52832 MCU的平均運行電流在4mA左右,在添加電源管理模塊后MCU的電流測試如下表所示:

從測試結果可以看出,在對功耗敏感的系統上,比如依靠電池供電的系統,非常有必要使用電源管理框架,它可顯著降低系統功耗,增加系統待機時間。

二、應用配置(為應用添加低功耗支持)

應用若要使用電源管理框架,需進行如下配置:

(1)應用目錄的.mk文件中添加對電源管理模塊的依賴,示例:

GLOBAL_DEFINES += RHINO_CONFIG_CPU_PWR_MGMT=1

$(NAME)_COMPONENTS := rhino/pwrmgmt

(2)在應用初始化函數中(比如application_start(int argc, char *argv[]))調用電源管理模塊初始化函數。

cpu_pwrmgmt_init();

三、示例應用(app/example/pwr_test)

目前AliOS Things 2.0版本在developerkit和PCA10040平臺上對電源管理框架進行了適配,可用如下命令編譯示例應用并下載到develoerkit上運行:

aos make pwr_test@developerkit

aos upload pwr_test@developerkit

示例應用創建了2個任務demo1和demo2。demo1的主要邏輯是一個while循環:count1增1,同時打印count1和g_idle_count[0]的值,然后睡眠1秒。demo2的主要邏輯也是一個while循環:count2增1,同時打印count2的值,然后睡眠2秒。

其中g_idle_count[0]是一個全局變量,idle任務在執行時會累加該值。

若沒有開啟低功耗模塊,那么當demo1和demo2處于睡眠狀態時,idle任務持續執行,g_idle_count[0]不斷增加。輸出示例如下:

count1 = 0, idle = 0

count2 = 0

count1 = 1, idle = 2347298

count1 = 2, idle = 4693421

count2 = 1

count1 = 3, idle = 7036926

count1 = 4, idle = 9383049

count2 = 2

count1 = 5, idle = 11726554

count1 = 6, idle = 14072465

開啟低功耗時,當demo1和demo2處于睡眠狀態時,idle任務執行g_idle_count[0]增1后,調用cpu_pwr_down()進入低功耗狀態。因此系統每次進入空閑狀態,g_idle_count[0]只增加1。輸出示例如下:

count1 = 0, idle = 0

count2 = 0

count1 = 1, idle = 1

count2 = 1

count1 = 2, idle = 3

count1 = 3, idle = 4

count2 = 2

count1 = 4, idle = 6

count1 = 5, idle = 7

說明:如果條件允許,直接測試功耗,比如測試MCU的電流,效果更直觀。

四、電源管理框架的適配

由于電源管理框架的運行依賴于硬件能力,因此在適配時首先要分析目標硬件是否有能力支持,然后要基于硬件能力為電源管理框架提供相關驅動。

4.1 硬件要求

要想支持電源管理框架,目標MCU需要支持如下特性:

(1)至少支持一種低功耗模式。在該低功耗模式下,RAM寄存器的值能夠被維持。

(2)在低功耗模式下,存在可用的定時器,且該定時器能喚醒系統。在tickless機制下,該定時器用于計算低功耗時間,以補償系統時鐘。

4.2 適配接口

為了支持電源管理模塊需完成如下接口適配:

注:可參考developerkit和PCA10040平臺上的適配示例(pwrmgmt_hal目錄)。

作者:云棲社區 jianniu

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電源管理
    +關注

    關注

    115

    文章

    6159

    瀏覽量

    144257
  • 物聯網
    +關注

    關注

    2904

    文章

    44306

    瀏覽量

    371459
收藏 人收藏

    評論

    相關推薦

    聯網學習路線來啦!

    聯網學習路線來啦! 聯網方向作為目前一個熱門的技術發展方向,有大量的人才需求,小白的學習入門路線推薦以下步驟。 1.了解
    發表于 11-11 16:03

    如何測試聯網設備功耗

    如何測試聯網設備功耗聯網(IoT)將涵蓋我們日常生活的各個方面,因為它使數十億的物品能夠隨
    的頭像 發表于 10-11 08:05 ?392次閱讀
    如何測試<b class='flag-5'>物</b><b class='flag-5'>聯網</b><b class='flag-5'>設備</b>的<b class='flag-5'>功耗</b>

    聯網系統中常用的低功耗自組網無線傳輸方案(三)_藍牙芯片篇

    低功耗藍牙(BLE)芯片,能夠在保證正常通信的前提下顯著減少電量消耗,從而延長物聯網設備的使用時間。這種低功耗特性對于依賴電池供電的
    的頭像 發表于 09-29 17:11 ?382次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯網</b>系統中常用的<b class='flag-5'>低功耗</b>自組網無線傳輸方案(三)_藍牙芯片篇

    聯網系統中TCP低功耗產品長連接狀態下降低功耗功能的實現方案

    01 ?概述 TCP相關內容參考文章《聯網行業中TCP通信協議介紹以及如何實現》 02 ?功耗的組成 低功耗技術就是一系列的降低功耗的技術
    的頭像 發表于 09-29 11:50 ?286次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯網</b>系統中TCP<b class='flag-5'>低功耗</b>產品長連接狀態下降<b class='flag-5'>低功耗</b>功能的實現方案

    聯網系統低壓差低功耗電源方案分享_LDO詳解

    聯網系統中為什么要使用線性電源芯片(LDO) 在聯網系統中,使用線性電源芯片(LDO,Low
    的頭像 發表于 09-27 16:45 ?731次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯網</b>系統低壓差<b class='flag-5'>低功耗電源</b>方案分享_LDO詳解

    引領智能未來:英銳恩科技的國產低功耗單片機ENMCU

    訪問詳細的技術文檔和示例代碼,快速搭建自己的開發環境。此外,英銳恩還定期舉辦技術培訓和線上講座,與開發者分享最新的行業趨勢和應用案例。 隨著聯網和智能設備的快速發展,對低功耗、高性
    發表于 09-26 17:16

    基于聯網設備管理

    聯網設備管理的重要性日益凸顯,設備數量激增帶來數據泄露風險。加強設備安全性、軟件升級與修復、身份驗證和互操作性是關鍵。
    的頭像 發表于 09-10 11:04 ?600次閱讀
    基于<b class='flag-5'>物</b><b class='flag-5'>聯網</b>的<b class='flag-5'>設備管理</b>

    什么是聯網技術?

    什么是聯網技術? 聯網技術(Internet of Things, IoT)是一種通過信息傳感設備
    發表于 08-19 14:08

    梯云聯LoRa網關:聯網時代的遠距離低功耗通信先鋒

    聯網(IoT)技術日新月異的今天,高效、穩定且低功耗的數據傳輸設備成為了推動行業發展的關鍵。深圳梯云聯推出的LoRa網關,正是這樣一款
    的頭像 發表于 07-25 09:59 ?259次閱讀

    請問如何使用微控制器優化電池供電的聯網設備功耗?

    如何使用微控制器優化電池供電的聯網設備功耗?
    發表于 07-23 07:09

    NB-IoT設備天線靜電浪涌保護方案解析

    窄帶聯網(Narrow Band Internet of Things,NB-IoT)是一種為聯網
    發表于 03-05 12:30 ?435次閱讀
    NB-IoT<b class='flag-5'>設備</b>天線靜電浪涌保護方案解析

    低功耗藍牙技術的特點 低功耗藍牙如何實現低功耗?

    低功耗藍牙技術是一種優化的藍牙技術,專為滿足低功耗需求而設計。它通過采用一系列節能措施和技術,實現了更低的功耗消耗,延長了
    的頭像 發表于 02-07 16:49 ?1912次閱讀

    什么是窄帶聯網?窄帶聯網和寬帶聯網有什么區別?

    什么是窄帶聯網?窄帶聯網和寬帶聯網有什么區別? 窄帶
    的頭像 發表于 02-04 14:48 ?4249次閱讀

    聯網設備管理平臺如何實現?如何發揮作用?

    隨著科技技術的飛速發展,各式各樣的聯網設備已經深入到我們生活工作的方方面面。小到智能家居,大到工業自動化,聯網
    的頭像 發表于 12-23 10:45 ?626次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯網</b><b class='flag-5'>設備管理</b>平臺如何實現?如何發揮作用?

    淺談聯網電源管理

    為了完全表征聯網設備功耗,必須在通常遇到的所有操作條件下進行測量。由于聯網
    的頭像 發表于 12-07 09:58 ?739次閱讀