我用keil,调试stm32单片机,采用j-link硬件仿真,发现我单步运行时,在watch窗口看变量的值有错误,有时能够更新,有时那个值就不更新,后来,我在程序中用printf把变量的值打印出来,发现,单步调试时,变量的值明显已经变化了(有printf在串口里打印出来了),但watch窗口还是没有更新,我重新在watch窗口删除要观察的变量,再把那变量输一遍,还是没有显示更新后的值,请问这是怎么回事?
多谢flyunlimit,
我的版本是3.62的,以前用过4.0的,结果编译出来的文件太大,放不进去?,结果就不用了,
弱弱的问一下,swj模式怎么设置?是不是硬件也不一样?网上查了点资料,似乎不能用原有的j-link的调试硬件吧?
额~~~刚才发现了我的j-link不支持swj模式。。。。。。。。郁闷啊,只能用printf了