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.
我现在有个应用, 在双核同时开了RAMGS9 使用, CPU1 写入一些数据和标志位, CPU2 负责读入数据并清除标志位,但事实是CPU2 根本没法执行清除动作, 为何啊, 我哪里还需要进行特殊配置吗?
1 您是否在link file内给出了相关的设置,如例程内的2837xD_RAM_lnk_shared_cpu1/2837xD_RAM_lnk_shared_cpu2
2 CPU2不能改变GSxMSEL寄存器,CPU2只能去读取。CPU1才能配置GSxMSEL寄存器
如
// // Give Memory Access to GS0/ GS14 SARAM to CPU02 // while( !(MemCfgRegs.GSxMSEL.bit.MSEL_GS0 & MemCfgRegs.GSxMSEL.bit.MSEL_GS14)) { EALLOW; MemCfgRegs.GSxMSEL.bit.MSEL_GS0 = 1; MemCfgRegs.GSxMSEL.bit.MSEL_GS14 = 1; EDIS; }