FreeRTOS删除任务
例如下面代码中的:vTaskDelete(xSoundTaskHandle);//其中xSoundTaskHandle是句柄。把函数句柄传进去,xTaskCreate创建任务时候会得到一个句柄。
·
删除任务使用的函数:
void vTaskDelete( TaskHandle_t xTaskToDelete );
把函数句柄传进去,xTaskCreate创建任务时候会得到一个句柄。
例如下面代码中的:vTaskDelete(xSoundTaskHandle);//其中xSoundTaskHandle是句柄
while (1)
{
/* 读取红外遥控器 */
if(IRReceiver_Read(&dev,&data)==0)
{
if(data == 0xa8)/* play */
{
/* 创建播放音乐的任务 */
extern void PlayMusic(void *params);
if(xSoundTaskHandle == NULL)
{
LCD_ClearLine(0,0);
LCD_PrintString(0,0,"create task");
ret = xTaskCreate(PlayMusic,"SoundTask",128,NULL,osPriorityNormal,&xSoundTaskHandle);
}
}
else if(data == 0xa2)/* power */
{
/* 删除播放音乐的任务 */
if(xSoundTaskHandle != NULL)
{
LCD_ClearLine(0,0);
LCD_PrintString(0,0,"delete task");
vTaskDelete(xSoundTaskHandle);
PassiveBuzzer_Control(0);
xSoundTaskHandle = NULL;
}
}
}
}
openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。
更多推荐



所有评论(0)