在Keil调试器中无法读取局部变量;< >不在范围

8个帖子/ 0个新
最后发表
MichaelKopp
离线
最后看到:5年11个月前
加入:2014-10-13 12:55
在Keil调试器中无法读取局部变量;< >不在范围

你好,

我无法查看参数/局部变量时,调试与Keil的uVision 5.12。

我尝试调试DA14580上的一些应用程序使用Keils uVision 5.12.0.0(免费版本)。我安装了对Cortex-M的ARM5遗留支持http://www2.keil.com/mdk5/legacy/

如果我将断点设置为如下函数(在串行项目示例中)

sps_server_create_db_req_handler

我无法查看参数的内容。在' Call Stack + Locals'窗口中,它们被标记为' &tl;不在>范围内'。(不过,我可以查找寄存器值,通常的调用约定表明,R0-R3是我的四个参数。)对于一些局部变量也存在同样的问题;它们显示为' ',尽管我知道,它们在scope…

你知道,如何解决这个问题吗?

谢谢你!
迈克尔

BarryReinhold
离线
最后看到:6年3个月前
加入:2014-07-22) 21:15
迈克尔,

迈克尔,
你在这个问题上有什么进展吗?
我也有同样的问题。uVision的版本也是5.12。

Harry2315
离线
最后看到:4年2个月前
加入:2015-01-20 06:10
“不在范围内”是指

“not in scope”是指系统使用CPU寄存器来存储变量。

TR_Dialog
离线
最后看到:1个月1个星期前
工作人员
加入:2014-06-30 23:52
你好,

你好,

您可以尝试更改优化级别。

谢谢,

TR_DIALOG

Aviel
离线
最后看到:6年2个月前
加入:2015-02-22 14:34
我也有同样的问题。

我也有同样的问题。uVision的版本也是5.12。
我改变了优化级别,但这并没有解决。

justinjansen
离线
最后看到:4年3个月前
加入:2014-11-20 03:24
即使变量不是

即使变量没有使用堆栈,调试器也应该足够聪明,能够找出变量存储的位置并为您显示局部变量。但我也有同样的问题,即使优化关闭了。

summer20100514
离线
最后看到:4年6个月前
大师
加入:2014-12-30 05:01
我用

我通过将优化级别设置为级别0 (-O0)来解决我的问题

omerorhun
离线
最后看到:3年9个月前
加入:2017-08-29 15:09
你可以定义另一个

您可以定义另一个全局变量。然后,在这一行下,在其中赋值局部变量的值。谢谢Harry2315