Other Parts Discussed in Thread: CONTROLSUITE, C2000WARE
TMS320F28377D IPC无法进中断
CPU1设置IPC的中断0,CPU2相应该中断,查看CPU1的IPC_FLAG的bit0和CPU2的IPC_STS的bit0,都置位为1,但是CPU2无法进入中断
我用TI的例程,也不能进入中断
C:\ti\controlSUITE\device_support\F2837xD\v210\F2837xD_examples_Dual\cpu01_to_cpu02_ipcdrivers
CPU1的程序:
while(1)
{
DELAY_US(500); //每隔0.5ms
SendIpcFlag(0); // 触发CPU1 Ipc中断0
}
CPU2的程序:
1)初始化程序
PieCtrlRegs.PIECTRL.bit.ENPIE = 1; // Enable the PIE block
EALLOW;
PieVectTable.IPC0_INT = &CPU01toCPU02IPC0IntHandler;
EDIS;
IER |= M_INT1 ;
2)中断程序
interrupt void CPU01toCPU02IPC0IntHandler (void)
{
// Acknowledge IPC INT0 Flag and PIE to receive more interrupts
IpcRegs.IPCACK.bit.IPC0 = 1;
PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
}
3)调试的现象

