我设计tms320c6713bgdp-300芯片和FPGA的EP3C80F484C8芯片通过DSP的EMIF外接端口通信,利用EDMA模式进行通信,设计结构如下:DSP作为主器件控制总线工作,FPGA作为从器件,通过发送中断5信号通知DSP启动EDMA传输,现在的问题是DSP能够收到中断5信号,并能正确进入中断,但是在接收数据的时候,程序停止在!while(EDMA_RGET(CIPR)&(1<<14))//等待EDMA5通信完毕,该段,也就是CIPR寄存器标志位无法置位,接收一直处于等待状态,请问怎么解决?
Tony Tang:
while(EDMA_RGET(CIPR)&(1<<14))
应该是OPT的TCC配置为14了吧。
EDMA的搬移数据了吗?
建议检查一下参数配置。
文档里有各种传输模式的参数配置样例说明:www.ti.com/…/spru234c
Jacob1:
有没有在初始化的时候清一下标志?
EDMA_intDisable(TCCINTNUM);
EDMA_intClear(TCCINTNUM);
EDMA_intEnable(TCCINTNUM);
Jacob1:
有没有在初始化的时候清一下标志?
EDMA_intDisable(TCCINTNUM);
EDMA_intClear(TCCINTNUM);
EDMA_intEnable(TCCINTNUM);