手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

freertos任务如何自动切换

时间:2024-10-25 10:07:13

1、使用freertos最重要的是按设备的实际条件,配置好FreeRTOSConfig.h文件,这里不详细展开这个文件,只说几个和任务调度最终要的量,configTICK_RATE_HZ配置内核运行频率,1000就是1ms运行一次,自动做一次任务调度。

freertos任务如何自动切换

2、freertos是靠SysTick时钟中断驱动的,要运行起来就要在配置文件里,配置后3个系统中断,如下图。

freertos任务如何自动切换

3、接下来配置好freertos运行周期和驱动中断后,要配置后任务优先级,这里使用CMSIS-RTOS库中对RTOS优先级的统一定义,如下图的8种优先级。

freertos任务如何自动切换

4、简单示例一下,如下图,配置两个任务,一个初始化任务,一个USB任务,分别设置成正常优先级和高优先级。

freertos任务如何自动切换
freertos任务如何自动切换

5、使用vTaskStartScheduler函数即可启动freertos内核,开始任务调度。

freertos任务如何自动切换

6、这里再说一下任务主动调度的情况,使用osSemaphoreWait函数,如果这个信号量没有就绪,这个任务就会主动被切换走,直到信号被发送出来,如下图所示,这是任务主动调度的情况。

freertos任务如何自动切换
freertos任务如何自动切换
© 手抄报圈