bwang 发表于 2023-7-5 14:41:12

请问版主STC32G仿真时怎么在watch中查看图中的ms和i变量值



请问版主STC32G用link1D进行在线仿真时怎么在watch窗口中查看图中的ms和i的变量值,谢谢!

看了很多个函数都是显示 cannot evaluate,同样的函数用STC8仿真是可以的.


zhp 发表于 2023-7-5 15:04:29

关于这个问题,我们的同事和之前的客户多方验证
Keil环境下硬件仿真时无法正确查看局部变量
局部变量并没有分配存储器地址,而是存放在寄存器中
如果一定要看,可以看Registers窗口中的相应寄存器


比如这里的变量“i”对应寄存器WR6



bwang 发表于 2023-7-5 16:01:31

不光是寄存器中的变量看不到值,看了很多个程序和函数,code区的局部字符串常量也是看不到,希望能解决这个问题

zhp 发表于 2023-7-5 16:34:44

bwang 发表于 2023-7-5 16:01
不光是寄存器中的变量看不到值,看了很多个程序和函数,code区的局部字符串常量也是看不到,希望能解决这个问 ...

后续我们这边尽力看看能否解决

由于Keil并不是我们自己开发的软件
里面有些莫名其妙的问题我们也很无奈

bwang 发表于 2023-7-5 16:59:25

zhp 发表于 2023-7-5 16:34
后续我们这边尽力看看能否解决

由于Keil并不是我们自己开发的软件


嗯嗯,先分析一下,看看问题是出在keil软件上还是仿真器上,感谢

电子DIY小家 发表于 2023-7-12 13:58:21

放全局变量里再看呗

bwang 发表于 2023-7-12 22:24:08

电子DIY小家 发表于 2023-7-12 13:58
放全局变量里再看呗

是的,或者改成静态变量也可以

zhsoliakisd 发表于 2023-10-30 22:37:41

我在用link1D仿真32G12K128芯片时,全局变量的值不能实时刷新,只有在点击 stop后,全局变量的值才会刷新,请问是哪里的原因呢?谢谢

LAOXU 发表于 2023-11-1 13:45:48

局部变量被优化了, Keil C51也是一样, 只不过被优化的 局部变量, 数量太小, 不易察觉

可降低优化级, 试试

bwang 发表于 2023-11-22 18:14:53

LAOXU 发表于 2023-11-1 13:45
局部变量被优化了, Keil C51也是一样, 只不过被优化的 局部变量, 数量太小, 不易察觉

可降低优化级, 试试 ...

好的
页: [1] 2
查看完整版本: 请问版主STC32G仿真时怎么在watch中查看图中的ms和i变量值