本文内容列表:
局部列显示您在函数中定义的变量的值。
例如:
测试(){
无符号字符 i,j;
i=0x49;
j=i-0x1b;
}
然后当程序运行到函数test()时,就可以在locals栏中查看i和j的值了。
我刚开始学习的时候,也和你一样写的。后来发现有时候因为子函数使用了这么简单的变量,在主程序中很容易被优化成全局变量,因为在编译过程中就被优化成了全局变量,所以就不再这样写了。 。
你对调用栈有什么误解吗?它显示调用堆栈的内容,即函数指针和局部变量。
要观察全局变量,请使用监视窗口,
要观察数据段或数据块,请使用内存窗口。
Keil中查看各个变量值的方法如下:
1。在Register串口可以查看寄存器的值
2。点击“外设”中相应选项即可查看定时器、IO口、串口的状态
3。对于普通变量的值,可以直接将鼠标移到变量名称上,就会自动显示当前正在执行的变量的值。
简单来说,就是添加到Watch窗口即可添加到Watch。
但是你需要明确这个变量的范围和生命周期。对于很多临时变量来说,如果太早或太晚断点,就无法观察到它的值。
观察窗口可以查看某个符号的内容和类型(不限于变量)。
非常简单。已经被优化掉了。全部都在寄存器中,而不是在堆栈中。所以无法描述调试信息。当然,调试器也无法观察。如果您想看到它,请关闭优化。 [em:18:]