低功耗组件开源开启IoT产品智能省电模式-RT-Thread专栏-设计应用_第1页
低功耗组件开源开启IoT产品智能省电模式-RT-Thread专栏-设计应用_第2页
低功耗组件开源开启IoT产品智能省电模式-RT-Thread专栏-设计应用_第3页
低功耗组件开源开启IoT产品智能省电模式-RT-Thread专栏-设计应用_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档-下载后可编辑低功耗组件开源,开启IoT产品智能省电模式——RT-Thread专栏-设计应用PM组件背景随着物联网(IoT)的兴起,产品对低功耗的需求越来越强烈。例如作为数据采集的传感器节点,通常需要在电池供电时长期工作,还有一些产品需要在快速的响应网络功能的同时也能拥有较低的功耗。与此同时,越来越多的IoT产品使用到了RTOS,可是与传统裸机产品的低功耗处理相比,在RTOS平台上需要增加针对调度器内核做特殊处理,这就需要RTOS厂家提供低功耗相关的支持。为了适应IoT的这种需求,RT-Thread今天正式开源了电源管理(PM)框架。电源管理框架的理念是应用尽量透明,使得低功耗功能的使用更加简单。RTOS中的功耗IoT产品的功耗可以分成2部分,一部分是MCU内部的功耗,一部分是板载其他外设的功耗。而在MCU内的功耗又可以分成CPU的功耗和片内外设的功耗。为了实现低功耗的功能,我们需要对它们进行合适的管理。

与传统的裸机不一样,在RTOS上对于功耗的处理主要是在系统进入空闲(idle)任务之后。此时RTOS处于空闲状态,可以进入不同的低功耗模式(这时CPU已经停止运行了)。与此同时,也可以根据实际产品的需求,选择性关闭不同的片内外设和板载外设。在进入低功耗模式之后,MCU可以被部分中断唤醒,例如它可以被低功耗定时器中断、唤醒按键中断等等。MCU在被唤醒之后,系统需要保证依旧可以继续执行任务直到下空闲。RT-ThreadPM组件介绍为了在RT-Thread更好的实现低功耗功能,RT-Thread开发了一套通用的电源管理(PM)组件,也就是大家常说到低功耗组件。该组件配合RT-Thread的设备管理框架,不仅对上层提供了丰富的接口,也使得底层驱动对于该组件的适配变得更加简单。

PM组件的主要特点如下:低资源占用RT-ThreadPM组件资源占用极低,少使用情况: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的设备接口进行访问。由于设备接口可以通过设备文件系统方式对接到文件系统,所

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论