2365756_zh-CN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2365756_zh-CN

2365756_zh-CN

VS 代码扩展更新破坏了 RTOS 查看器

你好


到目前为止,我们使用的是 1.9.20 版本(旧版)的 vscode 工具,并使用https://marketplace.visualstudio.com/items?itemName=mcu-debug.rtos-views查看 freertos 线程的状态 (RT1189)。更新后,该工具不再工作,只显示"RTOS 检测未完成。下次停止时会恢复。" 有什么建议吗?

谢谢!


Re: VS code extension update broke RTOS viewer

您好,

MCUXpresso for VS Code 长期以来一直拥有自己的 RTOS 查看器。请查阅https://mcuxpresso.nxp.com/mcux-vscode/latest//html/RTOS-Details.html

此外,还有一项旧的更改,即扩展从使用Microsoft C/C++ 调试适配器迁移到基于 Cortex-Debug 的自有调试适配器。你必须创建一个新的调试配置,它会自动创建一个基于我们调试适配器的配置(你会注意到"mcuxpresso-debug" 作为类型)。

PS.请注意,如果使用 Segger 调试探针,则需要特别启用 RTOS 支持(请参阅 https://mcuxpresso.nxp.com/mcux-vscode/latest//html/Debug-Views.html#enabling-rtos-awareness)

此致,

克里斯蒂安

Re: VS code extension update broke RTOS viewer

我们在调试时使用 -Og 标志编译,改成 -O0 后,查看器就能正常工作了。但我想该工具还需要改进,因为 Og 应该是标准编辑-调试程序的默认设置。


与此无关的是,我还在调试控制台中看到以下警告

"warning: could not convert '\Main.cpp' from host encoding (CP1252) to UTF-32。
这种情况通常不会发生,请提交错误报告。"

谢谢!



Re: VS code extension update broke RTOS viewer

谢谢!

事实上,该信息来自 MCUXpresso RTOS 视图本身(我错误地引用了另一个插件)。

我附上了 launch.json 和自定义设备脚本(它与 Linkserver 26.3.123 的 mimxrt1180-evk.json 相同,但"connect-script" 是"RT1180_reset.scp" 。

我们的应用程序在 hyperram 中运行,使用 SDK 2.16。已正确设置 Freertos 变量。

我可以通过我们的应用程序调试一个步骤,但 RTOS 详细信息视图仍显示"RTOS 检测未完成。它将在下一次停止时恢复。"

谢谢!


Re: VS code extension update broke RTOS viewer

@cristiantepus有什么最新消息吗?

Re: VS code extension update broke RTOS viewer

今天我发现 MCUXpresso RTOS 查看器在发布模式下无法运行,也无法显示任何内容。

但是 https://marketplace.visualstudio.com/items?itemName=mcu-debug.rtos-views

可在-Og和发布模式下使用,但无法与当前的mcuxpresso vscode插件一起使用(被禁用?)。有办法恢复吗?

Re: VS code extension update broke RTOS viewer

你好@arunkumar_g

我们提供的 RTOS 详细视图依赖于 ELF 文件中存在的一些符号(如"FreeRTOSDebugConfig", " pxCurrentTCB", " uxCurrentNumberOfTasks", 等等)。我同意"RTOS 检测没有完成。" 没有说明出错的原因,我们将确保更清楚地说明这一点。

关于你在 " debug " 与 " 版本 " 中获得的结果,我想说这是编译器/链接器优化的结果——所需的符号被去掉了,所以任何消费者都找不到这些符号。在这种情况下,不仅 RTOS 详细信息视图会失效,底层 GDB 线程感知(LinkServer、J-Link、PEmicro)也无法在调用堆栈视图中显示和调试 FreeRTOS 任务。在这种情况下,我只能建议你确保更新代码,这样你就可以确保在两个 " debug " 和 " 版本 " 编译模式下都存在所需的符号。我们将确保更新文档和工具中的信息,以明确哪些符号是必需的,但却缺失了,从而导致视图无法显示数据。

您还提到 MCU 调试 RTOS 视图在这种特殊情况下可以工作。有可能,但我上次检查时还没有任何版本支持(版本可通过检查"FreeRTOSDebugConfig" 找到)。请记住,FreeRTOS 的数据结构是 RTOS 版本所特有的。要启用 MCU 调试视图,您可以询问维护者如何添加 "mcuxpresso-debug" 调试适配器(MCUXpresso 专用)。

鉴于您使用的是基于旧版 SDK 2.16 的项目,我建议您改用基于 CMake& Kconfig 的最新 MCUXpresso SDK。
 
一些有用的链接:
 
谢谢!
阿德里安
Tags (1)
No ratings
Version history
Last update:
‎06-04-2026 04:43 AM
Updated by: