1)如果在linux 下 Echo Start,Echo Stop再Echo Start,这样数组是可以初始化初值的。
2)如果在Keil下reset或者用WDT2 Reset RTP Only,那么数组的初值变为了程序中最后修改的值。解决方法如下:
根本原因是RTP代码中定义的ROM区域其实是SRAM或者DDR,是可以修改的。解决方法是设置不同的+ RW,+ZI的LD Address和EXE Address,可以参考附件的sct文件。数组可以不指定地址,或者指定到 +RW.+ZI的区域,这样RTP复位之后回去LR Address获取未修改的初始值。
例程如附件。
WDT_TimeoutWakeupAndReset_sct.zip
(440 Bytes)
main.zip
(1.92 KB)
|