TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320F28377S: 定义在0x0000a000的变化被强制改写

Part Number:TMS320F28377S

您好!

       我的程序有一个变量地址是在0x0000a000的,在CLA和CPU都有调用。

 然后0x0000a000是Cla1Share的首地址。

我遇到的问题是,虽然这个0x0000a000的变量uiFreqAvgCalStartFlag每次在CPU的代码中会清0,但是快速运行一段代码之后,就会发现这个变量uiFreqAvgCalStartFlag被改写为1.

而且是只有放在0x0000a000的变量才会被改写为1,放在后面的变量都不会,这个地址的变量有什么问题呢?

我排查了Cla1Share前面定义的Cla1Prog空间利用了大概90%,按理说也不会是前面的空间溢出。

另外,我通过仿真器单步仿真运行的话,这个0x0000a000的变量uiFreqAvgCalStartFlag还是0,但是我点击快速运行任意一个函数,uiFreqAvgCalStartFlag就会马上改写为1.

请问这是什么原因呢,能不能帮忙分析,给一些思路呢,谢谢!

Taylor:

您好,

已经收到了您的案例,调查需要些时间,感谢您的耐心等待。

,

Links:

你好,您能确认您是否在应用程序中正确设置了CLA吗。Cla1Prog内存似乎配置不正确。请仔细检查链接器命令文件。有关在现有代码中启用的分步指南,请参阅此链接。

https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/1039/8475.CLAProjectStructureUG.pdf

,

Liu Jun:

我们找到问题了,有一些变量被定义为16位整数型了,改为32位的定义就可以了,谢谢

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28377S: 定义在0x0000a000的变化被强制改写
分享到: 更多 (0)