IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> FreeRTOS-低功耗tickless模式 -> 正文阅读

[嵌入式]FreeRTOS-低功耗tickless模式

1.整体思路图

在这里插入图片描述

2.keil5中配置

在这里插入图片描述

当将宏定义configUSE_TICKLESS_IDLE配置为1时且系统运行满足以下两个条件时,系统内核会自动的调用低功耗宏定义函数portSUPPRESS_TICKS_AND_SLEEP()。
1.当前空闲任务正在运行,所有其它的任务处在挂起状态或者阻塞状态。
2.在这里插入图片描述
只有当系统可运行于低功耗模式的时钟节拍数大于等于这个参数时,系统才可以进入到低功耗模式。默认配置为2,我们自定义时一定不能小于2

这个函数被空闲任务调用,是低功耗tickless的关键
在这里插入图片描述

3.滴答定时器频率与系统主频的关系

实时操作系统一般都是采用滴答定时器做系统时钟,一个是系统主频,另一个是系统主频的八分频,默认的port.c移植文件中是用的系统主频。

1.SysTick滴答定时器时钟源选择系统主频
在这里插入图片描述
2.SysTick滴答定时器时钟源选择系统主频的八分频
在这里插入图片描述
这个地方由72000000/8=9000000即可。

4.系统进入停机模式

介绍两个函数

configPRE_SLEEP_PROCESSING( xExpectedIdleTime )

configPOST_SLEEP_PROCESSING( xExpectedIdleTime )
在这里插入图片描述
函数被调用在
在这里插入图片描述

1.configPRE_SLEEP_PROCESSING( xExpectedIdleTime )
执行低功耗模式前,用户可以在这个函数里面关闭外设时钟来进一步降低系统功耗。
设置其它低功耗方式也是在这个函数里面,用户只需设置参数xExpectedIdleTime=0即可屏蔽掉默认的wfi指令执行方式。
因为退出这个函数后会通过if语句检测此参数是否大于0,配置好其它低功耗模式后,设置参数 xExpectedIdleTime = 0即可,但切不可将此参数随意设置为0以外的其它数值。

2.configPOST_SLEEP_PROCESSING ( xExpectedIdleTime )
退出低功耗模式后,此函数会得到调用,之前在configPRE_SLEEP_PROCESSING里面关闭的外设时钟,可以在此函数里面重新打开,让系统恢复到正常运行状态。

5.低功耗注意要点

1.用户需要根据最低电源消耗、最快速启动时间和可用的唤醒源等条件,选定一个最佳的低功耗模式。可以使用的低功耗方式有睡眠模式,待机模式,停机模式。
2.选择了低功耗方式后就是关闭可以关闭的外设时钟。
3 . 降低系统主频。
4 . 注意I/O的状态。
如果此I/O口带上拉,请设置为高电平输出或者高阻态输入。
如果此I/O口带下拉,请设置为低电平输出或者高阻态输入。
i. 在睡眠模式下,所有的I/O引脚都保持它们在运行模式时的状态。
ii. 在停机模式下,所有的I/O引脚都保持它们在运行模式时的状态。
iii. 在待机模式下,所有的I/O引脚处于高阻态,除了以下的引脚:复位引脚(始终有效)。当被设置为防侵入或校准输出时的TAMPER引脚。被使能的唤醒引脚
5 . 注意I/O和外设IC的连接。
6 .测低功耗的时候,一定不要连接调试器,更不能边调试边测电流。

总结

跟着这个博主学习的-很厉害的
点个赞呗!
在这里插入图片描述

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-09-23 11:37:35  更:2021-09-23 11:38:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/30 1:52:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码