- 8
- 0
- 约4.36万字
- 约 25页
- 2017-10-15 发布于江苏
- 举报
【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
您可能关注的文档
最近下载
- 制造业信息化战略规划实施与优化-PDM.docx VIP
- 那智不二越机器人flexgui toolbox操作说明书.pdf VIP
- 智慧工厂-智慧工厂解决方案.docx VIP
- 高中化学解题方法归纳:和量法.doc VIP
- 译林牛津新版高中英语(必修1-3)单词表.pdf VIP
- 包装有限公司分切机安全风险分级清单.docx VIP
- 重庆市西南大学附属中学2025届高三下学期二诊模拟考试物理试卷 含解析.docx VIP
- 【高中英语】《星火英语同步词汇》抗遗忘速记手册.docx VIP
- 成都市锦江区2026届初三一诊(暨期末考试)数学试卷(含答案).docx
- 三坐标 培训教程.pptx VIP
原创力文档

文档评论(0)