Hi:
大家好, 我使用6670的EDMA实例1做数据搬移,使用的使EDMA通道6,shareregion 3,在使用之前注册了中断,注册的函数如下:
CpIntc_dispatchPlug(ccXferCompInt[edma3Id][tpccRegionUsed],EdmaInst1Test_CB,edma3Id,TRUE);
CpIntc_mapSysIntToHostInt(0, ccXferCompInt[edma3Id][tpccRegionUsed],ccXferHostInt[edma3Id][dsp_num]);
CpIntc_enableHostInt(0, ccXferHostInt[edma3Id][dsp_num]);
eventId = CpIntc_getEventId(ccXferHostInt[edma3Id][dsp_num]);
EventCombiner_dispatchPlug (eventId,CpIntc_dispatchLoc,ccXferHostInt[edma3Id][dsp_num],TRUE);
EventCombiner_enableEvent(eventId);
其中EdmaInst1Test_CB使我自己写的中断回调函数;配置完成EDMA实例1之后,开始搬移,EDMA完成搬移之后,发现EDMA 实例1对应的IER,IPR中都有值,且值为0x00000040,但是中断回调函数EdmaInst1Test_CB没有走到?
请各位大侠帮忙分析一下,这个原因是什么?
我怀疑是CPINTC没有收到EDMA的事件,或者收到了没有输出对应的Host事件,但是不知道该如何去验证这个猜想?请各位高人指点?
谢谢!