【FreeRTOS】使用指南1:任务管理

【FreeRTOS】使用指南1:任务管理

本章的目的是让读者充分了解:
 在应用程序中,FreeRTOS 如何为各任务分配处理时间。
 在任意给定时刻,FreeRTOS 如何选择任务投入运行。
 任务优先级如何影响系统行为。
 任务存在哪些状态。
此外,还期望能够让读者解:
 如何实现一个任务。
 如何创建一个或多个任务的实例。
 如何使用任务参数。
 如何改变一个已创建任务的优先级。
 如何删除任务。
 如何实现周期性处理。
 空闲任务何时运行,可以用来干什么。

1.在应用程序中,FreeRTOS 如何为各任务分配处理时间。

一个称为心跳(tick,有些地方被称为时钟滴答,FreeRTOS称为时钟心跳)中断的周期性中断,调度器在每个时间片的结束时刻运行,决定下一个时间片运行的任务。
存在优先级高的就绪任务先执行,除非该任务阻塞或挂起
有多个优先级一样的就绪任务时,由任务调度器调度,交替执行

2.在任意给定时刻,FreeRTOS 如何选择任务投入运行。

优先级最高的就绪任务投入运行
同优先级轮流执行

3.任务优先级如何影响系统行为。

优先级高先运行,优先级高可以抢占低优先级任务运行

4.任务存在哪些状态。

在这里插入图片描述


1.如何实现一个任务。

(1).写好任务函数
(2).使用xTaskCreate() 函数创建任务,把写好的任务函数传进去
(3).使用vTaskStartScheduler()启动任务调度

2.如何创建一个或多个任务的实例。

在这里插入图片描述

3.如何使用任务参数。

在这里插入图片描述

4.如何改变一个已创建任务的优先级。

vTaskPrioritySet()

5.如何删除任务。

vTaskDelete()

6.如何实现周期性处理。

vTaskDelayUntil()
在这里插入图片描述

7.空闲任务何时运行,可以用来干什么。

当调用 vTaskStartScheduler()时,调度器会自动创建一个空闲任务。
空闲任务负责回收内核资源,用户也可以在其钩子函数中实现自己的功能。

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值