你好,
当我使用 PE Micro 调试 S32K344 时,我发现了一个数组(__attribute__ ((section(".standby_data")))位于备用 RAM 段中的 volatile uint32_t WkupSourcestatus1[64];) 在进入 main() 时被意外修改。然后,如附图所示,我手动修改了寄存器,重新初始化了备用 RAM 区域。数据已正确初始化为 0,进入 main() 函数后,一切运行正常。但是,RESET 后,当我进入 Reset_Handler 时,WkupSourcestatus1 数组中的数据又被修改了。为什么会发生这种情况?我注意到数组中出现了大量的 0x5AA55AA5 值。这是否与 SBAF_BOOT_MARKER 有关?我在另一块电路板上测试过,现象相同。
8.png8.png
然后我改用 J-Link 进行调试,发现调试过程中 RESET 时没有出现异常。但是,在重新启动调试会话后,备用 RAM 区域中的所有数据都会变成 0xDEADBEEF。这是预期行为吗?
S32K344
S32DS3.6.4
RTD700
PE 版本 6.0.8
BR,
杰森