主题中讨论的其他器件:C2000WARE、 SFRA
工具/软件:Code Composer Studio
您好!
我正在从事 TMS320f28075 32位微控制器的工作、用于电源控制应用。
在 CLA 内读取和处理 ADC 值。 从闪存运行代码时、观察到 CLA 内部的代码未执行、即使存在用于将代码从闪存复制到 RAM 的代码。 这种行为的可能原因是什么? 此外、CLA 中的常量是否有可能不会被复制到 RAM 中?
提前感谢!
此致、
Anjana
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Code Composer Studio
您好!
我正在从事 TMS320f28075 32位微控制器的工作、用于电源控制应用。
在 CLA 内读取和处理 ADC 值。 从闪存运行代码时、观察到 CLA 内部的代码未执行、即使存在用于将代码从闪存复制到 RAM 的代码。 这种行为的可能原因是什么? 此外、CLA 中的常量是否有可能不会被复制到 RAM 中?
提前感谢!
此致、
Anjana
您好、Anjana、
您是指在 RAM、链接器段.TI.ramfunc 和 ramfuncs 中初始化 CPU 函数的代码吗?
对于 CLA 代码和 CLA 常量也应该执行同样的操作。 CLA 例程链接到 Cla1Prog 部分。 CLA 常量是链接的.const_cla 段。 您需要像.TI.ramfunc 和 ramfuncs 一样对它们进行初始化。
Edward
尊敬的 Edward:
您好 Sal、
感谢您的回复!
我已附加链接器文件。\n 您能浏览一下吗?
当配置为闪存时、我添加了以下代码段。 我应该添加额外的行来复制 CLA 常量吗?
#ifdef _flash
/*将代码从闪存复制到 RAM */
memcpy (((uint32_t *)&Cla1funcsRunStart、(uint32_t *)&Cla1funcsLoadStart、
(uint32_t)和 Cla1funcsLoadSize);
#endif /*_flash */
谢谢、
Anjana