当前位置: 首页 > article >正文

STM32 FreeRTOS时间片调度---FreeRTOS任务相关API函数---FreeRTOS时间管理

目录

时间片调度简介

FreeRTOS任务相关API函数介绍

延时函数介绍


时间片调度简介

在FreeRTOS中,同等优先级的任务会轮流分享相同的CPU时间,这个时间被称为时间片。在这里,一个时间片的长度等同于SysTick中断的周期。

FreeRTOS任务相关API函数介绍

任务相关的API主要如下:

函数

描述

uxTaskPriorityGet()

获取任务优先级

vTaskPrioritySet()

设置任务优先级

uxTaskGetNumberOfTasks()

获取系统中任务的数量

uxTaskGetSystemState()

获取所有任务状态信息

vTaskGetInfo()

获取指定单个的任务信息

xTaskGetCurrentTaskHandle()

获取当前任务的任务句柄

xTaskGetHandle()

根据任务名获取该任务的任务句柄

uxTaskGetStackHighWaterMark()

获取任务的任务栈历史剩余最小值

eTaskGetState()

获取任务状态

vTaskList()

以“表格”形式获取所有任务的信息

vTaskGetRunTimeStats()

获取任务的运行时间

官网:---https://freertos.org/zh-cn-cmn-s/a00106.html

延时函数介绍

  • vTaskDelay():相对延时。从执行vTaskDelay()函数开始,直到指定延时的时间结束
  • xTaskDelayUntil():绝对延时。将整个任务的运行周期视为一个整体,适用于需要以固定频率定期执行的任务。------周期性执行。

假设有一个定时器,每隔1秒触发一次,希望在每次触发时执行某个任务。如果使用 vTaskDelay 来实现,那么你只能实现任务每秒执行一次,而不能确保任务在每秒的开始时刻执行。但如果你使用 xTaskDelayUntil,你可以指定任务在每秒的开始时刻执行,即使任务执行的时间不同。


http://www.kler.cn/a/507476.html

相关文章:

  • C 语言运算符的优先级和结合性
  • 正则表达式先入门,精不精通看修行
  • 【Uniapp-Vue3】uni-api交互反馈showToast的使用方法
  • 【Vim Masterclass 笔记12】S06L26 + L27:Vim 文本的搜索、查找及替换同步练习(含点评课)
  • Jmeter如何进行多服务器远程测试
  • Agent一键安装,快速上手Zabbix监控!
  • 人工智能领域单词:英文解释
  • LabVIEW串口通信调试与数据接收问题
  • 使用arthas监控诊断java应用
  • vscode accelerate deepspeed配置
  • 强推未发表!3D图!Transformer-LSTM+NSGAII工艺参数优化、工程设计优化!
  • 人脸识别SDK(Android)之项目回顾总结
  • 【Ubuntu】如何设置 GRUB 启动器的用户名和密码
  • Unix 与 Linux:操作系统的核心区别
  • 【2024年华为OD机试】(B卷,100分)- 恢复数字序列 (Java JS PythonC/C++)
  • PE文件:节表-添加节
  • 记一次数据库连接 bug
  • RabbitMQ介绍以及基本使用
  • Python从0到100(八十四):神经网络-卷积神经网络训练CIFAR-10数据集
  • 反转字符串中的单词 II:Swift 实现与详解
  • Qt之登录界面(splash)
  • PCL 计算点云的均值与标准差【2025最新版】
  • ASP.Net Identity + IODC 解析ReturnUrl
  • 【无线感知会议系列-21 】无线感知6G 研究愿景
  • 电气工程中的计算智能
  • Springboot(五十八)SpringBoot3使用Redisson实现接口的限流功能