【RTX操作系统教程】第24章 RTX低功耗之tickless模式.pdfVIP

  • 8
  • 0
  • 约4.36万字
  • 约 25页
  • 2017-10-15 发布于江苏
  • 举报

【RTX操作系统教程】第24章 RTX低功耗之tickless模式.pdf

【RTX操作系统教程】第24章 RTX低功耗之tickless模式

武汉安富莱电子有限公司 武汉安富莱电子有限公司 WWW.ARMFLY.COM 安富莱STM32-V4开发板RTX教程 WWW.ARMFLY.COM 安富莱STM32-V4开发板RTX教程 第24章 RTX 低功耗之 tickless 模式 第24章 RTX 低功耗之 tickless 模式 本章节为大家讲解 RTX 本身支持的低功耗模式 tickless 实现方法 tickless 低功耗机制是当前小型 RTOS 所采用的通用低功耗方法,比如 embOS FreeRTOS 和 uCOS-III (类似方法)都有这种机制。 本章教程配套的例子含 Cortex-M3 内核的 STM32F103 和 Cortex-M4 内核的 STM32F407。 24.1 tickless 低功耗模式介绍 24.2 RTX 实现 tickless 模式的框架 24.3 tickless 模式的 API 函数 24.4 实验例程说明 24.5 总结 24.1 tickless 低功耗模式介绍 24.1 tickless 低功耗模式介绍 tickless 低功耗机制是当前小型 RTOS 所采用的通用低功耗方法,比如 embOS FreeRTOS 和 uCOS-III (类似方法)都有这种机制。 RTX 的低功耗也是采用的这种方式,那么 tickless 又是怎样一种模式呢 仅从字母上看 tick 是滴答时 钟的意思 less 是 tick 的后缀 表示较少的 这里的含义可以表示为无滴答时钟。整体看这个字母就是表 示滴答时钟节拍停止运行的情况。 反映在 RTX 上 tickless 又是怎样一种情况呢?我们都知道,当用户任务都被挂起时 最低优先级的 空闲任务会得到执行。那么 STM32 支持的睡眠模式,停机模式就可以放在空闲任务里面实现。为了实现 低功耗最优设计 ,我们还不能直接把睡眠或者停机模式直接放在空闲任务就可以了。进入空闲任务后,首 先要计算可以执行低功耗的最大时间,也就是求出下一个要执行的高优先级任务还剩多少时间。然后就是 把低功耗的唤醒时间设置为这个求出的时间,时间到后系统会从低功耗模式被唤醒,继续执行多任务。这 个就是所谓的 tickless 模式。从上面的讲解中可以看出 实现 tickless 模式最麻烦是低功耗可以执行的时 间如何获取。关于这个问题 RTX 已经为我们做好了,调用函数 os_suspend 即可。 24.2 RTX 实现 tickless 模式的框架 24.2 RTX 实现 tickless 模式的框架 RTX 实现低功耗 tickless 模式的代码框架如下: __task void os_idle_demon (void) { uint32_t sleep; ... /* 第 1 步:配置系统深度睡眠模式 */ 2015年12月10 日 版本:1.0 第 1 页 共 25 页 2015年12月10 日 版本:1.0 第 1 页 共 25 页 武汉安富莱电子有限公司 武汉安富莱电子有限公司 WWW.ARMFLY.COM 安富莱STM32-V4开发板RTX教程 WWW.ARMFLY.COM

文档评论(0)

1亿VIP精品文档

相关文档