FreeRTOS任务相关API函数 📅 发布时间:2026/8/30 19:17:59 👁 浏览次数: 一、FreeRTOS任务相关API函数介绍任务相关的API主要如下函数描述uxTaskPriorityGet()获取任务优先级vTaskPrioritySet()设置任务优先级uxTaskGetNumberOfTasks()获取系统中任务的数量uxTaskGetSystemState()获取所有任务状态信息vTaskGetInfo()获取指定单个的任务信息xTaskGetCurrentTaskHandle()获取当前任务的任务句柄xTaskGetHandle()根据任务名获取该任务的任务句柄uxTaskGetStackHighWaterMark()获取任务的任务栈历史剩余最小值eTaskGetState()获取任务状态vTaskList()以“表格”形式获取所有任务的信息vTaskGetRunTimeStats()获取任务的运行时间官网任务实用程序 - FreeRTOS™二、任务状态查询API函数实验1、实验目标学会使用 FreeRTOS 任务状态查询相关 API 函数start_task用来创建其他的2个任务。task1LED1每500ms闪烁一次提示程序正在运行。task2用于展示任务状态查询相关API函数的使用。2、FreeRTOSConfig.h代码清单#defineINCLUDE_xTaskGetSchedulerState1#defineconfigUSE_TRACE_FACILITY1#defineconfigUSE_STATS_FORMATTING_FUNCTIONS1#defineINCLUDE_xTaskGetHandle1#defineINCLUDE_uxTaskGetStackHighWaterMark1#defineINCLUDE_eTaskGetState13、freertos_demo.c代码实验结果三、任务时间统计API函数实验1、实验目标学会使用 FreeRTOS 任务运行时间统计相关 API 函数start_task用来创建其他的2个任务。task1LED1每500ms闪烁一次提示程序正在运行。task2用于展示任务运行时间统计相关API函数的使用。2、函数解析由官网给出的使用说明可知需要重新配置一个定时器且频率应为systick定时器的10倍3、STM32CubeMX配置4、FreeRTOSConfig.h代码/*运行时间和任务状态统计相关定义*/#defineconfigGENERATE_RUN_TIME_STATS1/* 1:使能任务运行时间统计功能,默认: 0 */#ifconfigGENERATE_RUN_TIME_STATSexternvolatileunsignedlongulHighFrequencyTimerTicks;#defineportCONFIGURE_TIMER_FOR_RUN_TIME_STATS() (ulHighFrequencyTimerTicks0UL)#defineportGET_RUN_TIME_COUNTER_VALUE()ulHighFrequencyTimerTicks#endif#defineconfigUSE_TRACE_FACILITY1#defineconfigUSE_STATS_FORMATTING_FUNCTIONS15、main.c代码6、freertos_demo.c代码