本帖最后由 slytherinsun 于 2025-8-11 21:24 编辑
1.使用VSCode的EIDE插件导入官方FreeRTOS例程
按照上一篇帖子"【APM32F402R Micro-EVB开发板测评】2、基于VSCode+Arm GNU Toolchain+pyOCD的开发环境搭建"的5、6、7步导入"APM32F402_403_SDK_V1.0.2/Examples/Board_APM32F402_Tiny/RTOS/CMSIS_FreeRTOS/Project/Eclipse"并配置工程。
其中"7.调试器配置"中"launch.json"文件"excuable"的对应值需要修改为当前工程的可执行文件名称,即:
"executable": "${workspaceFolder}/build/APM32F402/CMSIS_FreeRTOS.elf",

2.FreeRTOS调试之任务查看
工程编译完成后,点击调试按钮进行调试。
等进入调试状态后,点击运行按钮并再次点击暂停调试。此时在VSCode界面下方终端界面的XRTOS插件中可以看到FreeRTOS中当前运行的任务及状态。

3.FreeRTOS调试之栈相关信息获取
上一步中各任务的栈相关信息为"?",原因是在当前FreeRTOS中未开启"configRECORD_STACK_HIGH_ADDRESS "选项。
在"FreeRTOS.h"中修改对应宏定义为1并重新编译调试即可。
"#ifndef configRECORD_STACK_HIGH_ADDRESS
#define configRECORD_STACK_HIGH_ADDRESS 1
#endif"
此时即可在XRTOS插件中看到各任务栈相关信息
|