Other Parts Discussed in Thread: TMS570LS3137, HALCOGEN
你好,
TMS570LS3137,MibSPI1的回环模式自发自收。收发128个数据,配置TG0的buffer为0~127。非DMA方式。
程序设计流程:
初始化时,使能TG发送/挂起中断,并配置为level0。向TXRAM写入数据启动TG0发送。
之后,在mibspi1HighLevelInterrupt()中断里,从RXRAM接收数据写入用户数据区。
我理解,TG0发送完成后,产生TG发送完成中断,即mibspi1HighLevelInterrupt()入口;但调试时发现,CPU无法进入mibspi1HighLevelInterrupt()中断函数,也就无法接受数据。不知道为什么无法进入中断?
附主函数:
void main(void)
{
loadDataPattern(D_SIZE,&TX_DATA[0]);
mibspi1Init();
/* - enabling loopback ( this is to emulate data transfer without external wires */
mibspiEnableInternalLoopback(mibspiREG1);
mibspiEnableGroupNotification(mibspiREG1,0,0);
mibspiSetData(mibspiREG1, 0, TX_DATA);
/* - start the mibspi transfer tg 0 */
mibspiTransfer(mibspiREG1,0);
while(1);
}