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

8个职位/ 0个新职位
最后发表
MichaelKopp
离线
最后看到:6年2个月前
加入:2014-10-13 12:55
无法读取Keil调试器中的Local变量;< >不在范围

你好,

在使用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;not In scope>'。(但是,我可以查找寄存器值,并且通常的调用约定表明R0-R3是我的四个参数。)一些局部变量也有同样的问题;它们显示为' ',尽管我知道,它们在scope…

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

谢谢你!
迈克尔

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

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

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

“不在作用域内”意味着系统使用CPU寄存器来存储变量。

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

你好,

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

谢谢,

TR_DIALOG

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

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

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

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

summer20100514
离线
最后看到:4年9个月前
大师
加入:2014-12-30 05:01
我解决了我的问题

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

omerorhun
离线
最后看到:4年1星期前
加入:2017-08-29 15:09
你可以定义另一个

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