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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值