您好!
我的程序有一个变量地址是在0x0000a000的,在CLA和CPU都有调用。
然后0x0000a000是Cla1Share的首地址。
我遇到的问题是,虽然这个0x0000a000的变量uiFreqAvgCalStartFlag每次在CPU的代码中会清0,但是快速运行一段代码之后,就会发现这个变量uiFreqAvgCalStartFlag被改写为1.
而且是只有放在0x0000a000的变量才会被改写为1,放在后面的变量都不会,这个地址的变量有什么问题呢?
我排查了Cla1Share前面定义的Cla1Prog空间利用了大概90%,按理说也不会是前面的空间溢出。
另外,我通过仿真器单步仿真运行的话,这个0x0000a000的变量uiFreqAvgCalStartFlag还是0,但是我点击快速运行任意一个函数,uiFreqAvgCalStartFlag就会马上改写为1.
请问这是什么原因呢,能不能帮忙分析,给一些思路呢,谢谢!
你好,
您能确认您是否在应用程序中正确设置了CLA吗。Cla1Prog内存似乎配置不正确。请仔细检查链接器命令文件。
有关在现有代码中启用的分步指南,请参阅此链接。