STM32 FreeRTOS 的任务挂起与恢复以及查看任务状态

目录

任务的挂起与恢复的API函数

任务挂起函数

任务恢复函数

任务恢复函数(中断中恢复)

函数说明

注意事项

查看任务状态


任务的挂起与恢复的API函数

vTaskSuspend():挂起任务, 类似暂停,可恢复

vTaskResume():恢复被挂起的任务

xTaskResumeFromISR():在中断中恢复被挂起的任务

任务挂起函数

cs 复制代码
void vTaskSuspend( TaskHandle_t xTaskToSuspend )

xTaskToSuspend:待挂起任务的任务句柄,为NULL表示挂起任务自身。

需将宏INCLUDE_vTaskSuspend配置为 1。

任务恢复函数

cs 复制代码
void vTaskResume( TaskHandle_t xTaskToResume )

INCLUDE_vTaskSuspend必须定义为 1。

不论任务被使用 vTaskSuspend() 挂起多少次,只需调用 vTaskResume() 一次,即可使其继续执行。被恢复的任务会重新进入就绪状态。

任务恢复函数(中断中恢复)

函数说明
cs 复制代码
BaseType_t xTaskResumeFromISR( TaskHandle_t xTaskToResume )

返回值

pdTRUE:任务恢复后需要进行任务切换。

pdFALSE:任务恢复后不需要进行任务切换。

注意事项

INCLUDE_vTaskSuspend 和 INCLUDE_xTaskResumeFromISR 必须定义为 1。

在中断服务程序中调用FreeRTOS的API函数时,中断的优先级不能高于FreeRTOS所管理的最高任务优先级。

查看任务状态

cs 复制代码
/* 开启跟踪task信息 */
#define configUSE_TRACE_FACILITY 1
#define configUSE_STATS_FORMATTING_FUNCTIONS 1

void vTaskList( char * pcWriteBuffer )
cs 复制代码
名称			状态    优先级   堆栈使用 任务编号
'X'(运行) 'B'(阻塞)、'R'(就绪)、'S'(暂停)或 'D'(删除)。
相关推荐
zmj32032414 分钟前
单片机串口收发数据不可靠--用做指令会执行错误动作
单片机·嵌入式硬件·串口
yuan1999719 分钟前
STM32 驱动 RC522(MFRC522)实现方案
单片机·嵌入式硬件
踏着七彩祥云的小丑2 小时前
嵌入式——认识电子元器件——电容系列
单片机·嵌入式硬件
Sean_VIP3 小时前
SeanLib系列函数库-MyList
stm32
NQBJT3 小时前
DMA —— 让 CPU “偷懒”的数据搬运工
stm32·单片机·dma·嵌入式
xiangw@GZ4 小时前
EMC原理:CS传导抗扰度测试总结
单片机·嵌入式硬件
椰羊~王小美4 小时前
STM32加密步骤简述
stm32
三佛科技-134163842124 小时前
PL3325CS/CD/CH/CE 与PL3325BE 之间的对比与联系(应用功率与典型应用电路)
单片机·嵌入式硬件·物联网·智能家居·pcb工艺
nuoxin1144 小时前
CH6001FN/BW-富利威
网络·人工智能·嵌入式硬件·fpga开发·dsp开发
blevoice4 小时前
杰理智能蓝牙音响开发板AC696N:文件系统操作API精讲
单片机·物联网·杰理蓝牙芯片·ac6966b蓝牙音响方案·杰理智能音箱开发·杰理ac6965e蓝牙音频开发