在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

RT-Thread正式開源了電源管理框架

RTThread物聯網操作系統 ? 來源:未知 ? 作者:李倩 ? 2018-11-02 15:45 ? 次閱讀

PM 組件背景

隨著物聯網(IoT)的興起,產品對低功耗的需求越來越強烈。例如作為數據采集的傳感器節點,通常需要在電池供電時長期工作,還有一些產品需要在快速的響應網絡功能的同時也能擁有較低的功耗。(文末有彩蛋)

與此同時,越來越多的 IoT 產品使用到了 RTOS,可是與傳統裸機產品的低功耗處理相比,在 RTOS 平臺上需要增加針對調度器內核做特殊處理,這就需要 RTOS 廠家提供低功耗相關的支持。

為了適應 IoT 的這種需求,RT-Thread 今天正式開源了電源管理(PM)框架。電源管理框架的理念是應用盡量透明,使得低功耗功能的使用更加簡單。

RTOS 中的功耗

IoT 產品的功耗來源可以分成2部分,一部分是 MCU 內部的功耗,一部分是板載其他外設的功耗。而在 MCU 內的功耗又可以分成CPU 的功耗和片內外設的功耗。為了實現低功耗的功能,我們需要對它們進行合適的管理。

與傳統的裸機不一樣,在 RTOS 上對于功耗的處理主要是在系統進入空閑(idle)任務之后。此時 RTOS 處于空閑狀態,可以進入不同的低功耗模式(這時 CPU 已經停止運行了)。與此同時,也可以根據實際產品的需求,選擇性關閉不同的片內外設和板載外設。

在進入低功耗模式之后,MCU 可以被部分中斷喚醒,例如它可以被低功耗定時器中斷、喚醒按鍵中斷等等。MCU 在被喚醒之后,系統需要保證依舊可以繼續執行任務直到下一次空閑。

RT-Thread PM 組件介紹

為了在 RT-Thread 更好的實現低功耗功能,RT-Thread 開發了一套通用的電源管理(PM)組件,也就是大家常說到低功耗組件。該組件配合 RT-Thread 的設備管理框架,不僅對上層提供了豐富的接口,也使得底層驅動對于該組件的適配變得更加簡單。

PM 組件的主要特點如下:

低資源占用

RT-Thread PM 組件資源占用極低,最少使用情況:ROM 占用 0.8K,RAM 占用 0.1K,非常適合對資源受限的嵌入式平臺。

應用透明性

用戶開啟了低功耗組件后,應用代碼基本不需要調整,PM 組件將在底層自動完成電源管理。這個特色功能主要用了下面兩個技術:

tickless:當系統空閑時,系統會盡可能的延長下次 tick 的觸發時間,保證 MCU 盡可能長的時間處于最低功耗模式;

時間補償:當 MCU 喚醒時,系統的 tick 也會自動進行補償處理,保證應用層獲取到的 tick 依舊正常。

智能省電模式

MCU 通常可以運行在不同的頻率,也可以進入不同的休眠模式。在 PM 組件的底層實現里,是將這些模式做了抽象處理,形成統一的模式命名。例如:高性能運行模式、低功耗運行模式、停止模式(僅僅 CPU 停止)、定時器模式(CPU 停止,進入深度休眠)等等。

問題:面對這么多模式,如果恰巧在產品上低功耗相關的外設也很多,怎么辦?

傳統方式:就需要用戶來處理好各個外設與電源模式切換的代碼。因為可能有些外設不支持低功耗模式下運行,所以不能讓系統空閑時就強制進入最低功耗模式,否則會導致一系列問題;

當前方式:當系統空閑時,PM 組件會結合當前用戶配置的電源模式以及 MCU 工作情況,選擇最適合的模式進行切換,并且會在切換前通知相關外設,做好模式切換的準備工作。

通用性強

可支持所有通用的 MCU ,該組件也已經在 RT-Thread 內部經過長期測試,并在多個平臺上做過驗證,例如:STM32系列、EFM32系列 等等。

豐富的上層接口

PM 組件除了本身提供的功耗接口,還實現了一個 PM 設備,上層用戶可以使用 RT-Thread 的設備接口進行訪問。由于設備接口可以通過設備文件系統方式對接到文件系統,所以 PM 組件就可以使用通用的文件接口來訪問。

同時 PM 組件還提供了 Finsh/MSH 調試命令,方便用戶也可以通過輸入命令方式,調試低功耗功能。

使用簡介

PM 組件目前開源在 RT-Thread 的 GitHub 倉庫中,代碼位于 rt-thread/components/drivers/pm 下,大致使用流程如下:

開啟:通過 ENV 工具,在 menuconfig 中的設備驅動菜單下選中 PM 組件;

移植:請先參考《電源管理用戶手冊》完成必要的移植過程;

應用:如果沒有對接功耗敏感的外設,此時應用代碼無需做任何更改,PM 組件會自動在后臺工作;否則需要對這些功耗敏感外設做特殊處理。

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

    關注

    115

    文章

    6187

    瀏覽量

    144676
  • 物聯網
    +關注

    關注

    2911

    文章

    44824

    瀏覽量

    375099
  • 低功耗
    +關注

    關注

    10

    文章

    2413

    瀏覽量

    103799

原文標題:RT-Thread 低功耗組件開源,開啟IoT 產品智能省電模式

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯網操作系統】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于RT-Thread的RoboMaster電控框架設計

    由于 RT-Thread 穩定高效的內核,豐富的文檔教程,積極活躍的社區氛圍,以及設備驅動框架、Kconfig、Scons、日志系統、海量的軟件包……很難不選擇 RT-Thread 進行項目開發。
    發表于 09-06 15:21 ?730次閱讀

    RT-Thread 架構圖

    RT-Thread 架構圖:RT-Thread開發指南開源地址內核層:RT-Thread 內核,是 RT-Thread 的核心部分,包括
    發表于 12-16 08:15

    RT-Thread編程指南

    RT-Thread編程指南——RT-Thread開發組(2015-03-31)。RT-Thread做為國內有較大影響力的開源實時操作系統,本文是RT
    發表于 11-26 16:06 ?0次下載

    RT-Thread全球技術大會:RT-Thread開源重塑軟件發展新生態

    RT-Thread全球技術大會:RT-Thread開源重塑軟件發展新生態,市場空間巨大,以開放的心態不斷提升技術水平,大膽創新,迎接挑戰! ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 10:47 ?1265次閱讀
    <b class='flag-5'>RT-Thread</b>全球技術大會:<b class='flag-5'>RT-Thread</b><b class='flag-5'>開源</b>重塑軟件發展新生態

    RT-Thread全球技術大會:RT-Thread電源管理的意義

    RT-Thread全球技術大會:RT-Thread電源管理的意義是為了滿足用戶對性能需求,盡可能降低系統能耗以延長設備待機時間。 ? ? ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 15:01 ?1107次閱讀
    <b class='flag-5'>RT-Thread</b>全球技術大會:<b class='flag-5'>RT-Thread</b><b class='flag-5'>電源</b><b class='flag-5'>管理</b>的意義

    RT-Thread全球技術大會:什么是電源管理組件?

    RT-Thread全球技術大會:什么是電源管理組件? ? ? ? ? ? 審核編輯:彭靜 ?
    的頭像 發表于 05-27 15:12 ?1171次閱讀
    <b class='flag-5'>RT-Thread</b>全球技術大會:什么是<b class='flag-5'>電源</b><b class='flag-5'>管理</b>組件?

    RT-Thread全球技術大會:RT-Thread上的單元測試框架與運行測試用例

    RT-Thread全球技術大會:RT-Thread上的單元測試框架與運行測試用例 ? ? ? ? ? ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 16:21 ?1643次閱讀
    <b class='flag-5'>RT-Thread</b>全球技術大會:<b class='flag-5'>RT-Thread</b>上的單元測試<b class='flag-5'>框架</b>與運行測試用例

    RT-Thread文檔_線程管理

    RT-Thread文檔_線程管理
    發表于 02-22 18:28 ?0次下載
    <b class='flag-5'>RT-Thread</b>文檔_線程<b class='flag-5'>管理</b>

    RT-Thread文檔_時鐘管理

    RT-Thread文檔_時鐘管理
    發表于 02-22 18:28 ?0次下載
    <b class='flag-5'>RT-Thread</b>文檔_時鐘<b class='flag-5'>管理</b>

    RT-Thread文檔_內存管理

    RT-Thread文檔_內存管理
    發表于 02-22 18:30 ?0次下載
    <b class='flag-5'>RT-Thread</b>文檔_內存<b class='flag-5'>管理</b>

    RT-Thread文檔_中斷管理

    RT-Thread文檔_中斷管理
    發表于 02-22 18:30 ?1次下載
    <b class='flag-5'>RT-Thread</b>文檔_中斷<b class='flag-5'>管理</b>

    RT-Thread文檔_RT-Thread SMP 介紹與移植

    RT-Thread文檔_RT-Thread SMP 介紹與移植
    發表于 02-22 18:31 ?9次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> SMP 介紹與移植

    RT-Thread文檔_utest 測試框架

    RT-Thread文檔_utest 測試框架
    發表于 02-22 18:43 ?2次下載
    <b class='flag-5'>RT-Thread</b>文檔_utest 測試<b class='flag-5'>框架</b>

    淺析RT-Thread設備驅動框架

    RT-Thread 設備框架屬于組件和服務層,是基于 RT-Thread 內核之上的上層軟件。設備框架是針對某一類外設,抽象出來的一套統一的操作方法及接入標準,可以屏蔽硬件差異,為應用
    的頭像 發表于 08-07 15:39 ?2023次閱讀

    基于 RT-Thread 的 RoboMaster 電控框架(一)

    由于 RT-Thread 穩定高效的內核,豐富的文檔教程,積極活躍的社區氛圍,以及設備驅動框架、Kconfig、Scons、日志系統、海量的軟件包……很難不選擇 RT-Thread 進行項目開發
    的頭像 發表于 09-19 19:55 ?800次閱讀
    主站蜘蛛池模板: 久热国产在线 | 国产拍拍拍免费视频网站 | 午夜视频啪啪 | 天天干天天操天天 | 午夜剧场官网 | 国产一区在线播放 | 韩国三级hd中文字幕 | 在线免费视频国产 | 天堂网2018 | xxx性xxx乱 | 久久久久大香线焦 | 失禁h啪肉尿出来高h | 日本一卡二卡3卡四卡网站精品 | 午夜色片 | 久久久久久亚洲精品 | 欧美亚洲三级 | 视频一区二区三区在线观看 | 天天干天天干天天操 | 欧美一级特黄视频 | 美女视频一区二区三区 | 天天干天天噜 | 天堂资源在线中文 | 男人不识本站 | 久久草在线视频国产一 | 4438x成人网全国最大 | 国产精品伦理一区二区三区 | 美日韩一区二区 | 久久美女精品国产精品亚洲 | 国产视频每日更新 | 98pao强力打造高清免费 | 色爱区综合激月婷婷激情五月 | 又粗又长又大真舒服好爽漫画 | 天天干天天草天天 | 国产色av| 中文字幕亚洲一区 | 毛色毛片免费观看 | 亚洲国产欧美日韩一区二区三区 | 亚洲人xx视频 | 手机在线完整视频免费观看 | 久久天天躁狠狠躁夜夜爽 | 国产免费高清视频在线观看不卡 |