keil硬件仿真时,显示变量的值错误

2024-12-17 03:02:41
推荐回答(2个)
回答1:

JLINK,这个问题我没遇到,但是用STM32的SWJ模式好些,省IO口,还速度快。watch窗口里的变量即便是在片子运行期间都会跟着变化,不是实时的,有滞后,但好过JTAG模式那样停止后才更新。

我是观察16次定时器捕捉的值,存到RAM的自定义数组里。

还有一点,注意MDK的版本,最新的4.0还有问题,用3.8的很不错。3.5以后的才开始支持SWJ模式,最早几个支持STM32的版本在仿真器的驱动上是有BUG的。

ST LINK是单位的,我用过一次就甩了,上面的捕捉,只能看到数组的前8个值,后8个压根不变。

回答2:

寄存器变量可以实时更新,内存变量只有在第一次断点看到的数据是实际的,此后不再更新。
只是看不到,内部运行当然还是有正常更新,只是看不到而已。
知道怎么处理的说下。。。