在 evkmimxrt1180_freertos_message_buffers_secondary_core 示例项目中,FreeRTOS 配置如下:
#define configMAX_PRIORITIES 56
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 0
该应用程序可以在 IDE(MCUXpresso IDE)中正常调试。但是,在使用 VS Code 进行调试时,FreeRTOS 启动调度程序后调试器就会退出。
当执行到 vTaskStartScheduler() 中的以下代码时,调试会话终止:
xNextTaskUnblockTime = portMAX_DELAY;
xSchedulerRunning = pdTRUE;
xTickCount = ( TickType_t ) configINITIAL_TICK_COUNT;
初始化这些变量之后,在调度第一个任务之前,调试器会断开连接,调试会话结束。
您能帮我分别在IDE和VS Code中测试一下,并找到解决方案吗?
嗨@yanyanwang ,
在功能域文件夹中构建项目后,您应该在该文件夹中找到主核心应用程序和辅助核心应用程序。
Pablo_Ramos_0-1782344180522.png
如果你点击这两个 .elf 文件的播放按钮对于每个文件,都会启动一个调试会话吗?
如果运行主核心直到它通过 MCMGR_StartCore 函数,是否可以暂停辅助核心的调试会话?
此致,
巴勃罗
您好,
我可以在辅助核心上成功启动调试会话,并且在 FreeRTOS 调度程序启动之前一切都按预期运行。
但是,一旦 FreeRTOS 开始调度任务(在调用 vTaskStartScheduler() 之后),调试器就会立即断开连接,调试会话就会退出。
请问您能否帮我找出这个问题的可能原因?如果有什么推荐的调试器设置或 FreeRTOS 配置需要我检查,请告诉我。
谢谢!
顺祝商祺!
彦彦
HI
您能帮我解答以下问题吗?
你是如何导入项目的?
你是否更改了项目中的任何设置?
你使用的是外部调试器吗?
此致,
巴勃罗