在freertos中卡死在了task.c文件中的portTASK_FUNCTION函数中

问题遇到的现象和发生背景

在stm32f405RGT6的板子上,用串口一位一位接收数据

问题相关代码,请勿粘贴截图
#if ( ( configUSE_PREEMPTION == 1 ) && ( configIDLE_SHOULD_YIELD == 1 ) )
    {
        
        if( listCURRENT_LIST_LENGTH( &( pxReadyTasksLists[ tskIDLE_PRIORITY ] ) ) > ( UBaseType_t ) 1 )//卡死
        {
            taskYIELD();
        }
        else
        {
            mtCOVERAGE_TEST_MARKER();
        }
    }
运行结果及报错内容

卡死在循环里

我的解答思路和尝试过的方法
我想要达到的结果

这个是能接收一段时间,然后就卡死在循环里接收不了了