我有2个内核共享内存。
我的问题是,如何编写一个代码,其输出将是一个二进制/十六进制文件,并且它将在两个内核上运行。
我的main()在CORE 1上运行,它可以工作,我想操作第二个CORE 并计算一些数学函数并将结果写入共享内存。
我正在使用CCS IDE。 我的例子看起来像那样:
#pragma DATA_SECTION(globalvar,".core2_data");
uint16_t globalvar=0xffff;
#pragma CODE_SECTION(test_multiply,".core2_code")
void test_multiply(void)
{
globalvar = 3*2;
while(1);
}
Main()
{
core2_startup_sequence();
...
...
...
}
我的项目中的启动文件是为CORE1配置的,我在两个内核的链接器文件中配置了RAM部分。 我的方法是否正确?
我此刻尝试的结果是:
使用它的core2_startup_sequence()成功启动第二个CORE;但是我无法将计算结果写入共享内存,似乎第二个核心并没有运行" #pragma" s中的指令。 谢谢。