请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TMS320F28379D Thread 中讨论的其他器件:C2000WARE
工具/软件:CCS 20.
您好!
我对双核 MCU 进行编程、并且在将变量放入公共 RAM 存储器时遇到了一个问题。 在本示例中、我使用其中一个 RAMGSx 扇区:
//这会转至包含在 CPU1和 CPU2工程中的.c 文件(常用函数)
#pragma DATA_SECTION (myCommonVariable、"ramgs6");
//这将转至我的附加.cmd 文件
部分中)
{
ramgs6. :> RAMGS6, 页面= 1.
}
问题是对于 CPU2、未指定 RAMGSx、因此我无法在.cmd 中添加扇区、因为这是针对 CPU1完成的;然后、我在构建 CPU2工程时收到相应的警告(未指定 ramgs6)。
结果是 CPU1上的 myCommonVariable 与 CPU2上的 myCommonVariable (不同的地址)不同。
我想在两个内核之间共享一个变量、我该如何处理这种情况?
至少使用 RAMGSx 应该可行、因为它是公共存储器空间、但似乎没有由 c2000ware 正确处理? 我想避免使用确切的内存地址、也不想通过 c2000ware 修改原始的.cmd。
此致、
Kamil