CCS5 仿真28034时,restart后全局变量无法恢复赋予的初值(不为0),而是保持之前的数值,
点击CPU reset,程序跑到0x003ff8a1的rom区域里面,全局变量仍然没有复位,
resume,跑到0x003ff599,停住,还是在rom里面,
查看map,这两个地址没有定义什么,
再restart,变量的数值还是没有复位。
除非terminate退出来,再重新debug,否则变量的数值就是不恢复初值。
我知道restart跳过了引导程序,但是cpu reset这样是不是不太正常。
这样仿真很烦,请高手们指点一下。
bozhao liu:
恩 更正一下我自己,定义时有给了初值的全局变量restart后,可以恢复初值。
没有定义初值的全局变量 通过下面的方式让他初值为零。
.ebss : > RAML2 PAGE = 1 fill=0x00
但是restart后,没有初值的变量就不会恢复初值了。
CCS5 仿真28034时,restart后全局变量无法恢复赋予的初值(不为0),而是保持之前的数值,
点击CPU reset,程序跑到0x003ff8a1的rom区域里面,全局变量仍然没有复位,
resume,跑到0x003ff599,停住,还是在rom里面,
查看map,这两个地址没有定义什么,
再restart,变量的数值还是没有复位。
除非terminate退出来,再重新debug,否则变量的数值就是不恢复初值。
我知道restart跳过了引导程序,但是cpu reset这样是不是不太正常。
这样仿真很烦,请高手们指点一下。
Seven Han:
回复 bozhao liu:
是的,ccs中通过Reset cpu -> restart将全局变量清零,但对于没有给初始值的变量,reset后会保持默认值。