请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号: TMS320F280039
您好的团队、
我向我的客户询问这个问题。
因为 RAM 空间不足、所以它们会优化内存分配。
最初、他们在 GSRAM 中定义了一个与 CAN 相关的结构变量、并希望将其移至 LSRAM。
但在修改后、CAN 通信无法正常工作、代码会耗尽(CAN 相关函数不使用 DMA 或 CLA、因此在我看来、此结构变量可以放置在 GSRAM 和 LSRAM 中)
因此、我假设可能是结构变量未按 4 个字节对齐。 我要求他们做以下修改:
- 在 cmd 中、定义 ALIGN (4)
- pragma DATA_ALIGN (canMsgTabPublic、4) 以定义 canMsgTabPublic
上述修改是否正确?
完成上述修改后、CPU 可以周期性地进入 ISR、但 CAN 通信仍然不良
您对此有何评论?
BRS
Shuqing