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.

DM642的中断问题



我在使用dm642进行语音处理时,因为考虑到CPU的处理速度远大于AIC23B的采集速度,所没采用EDMA方式存取数据,而是CPU直接读取McASP0串行器的数据,处理后再发送出去。如下:

codecdata= MCASP_RGETH(SEEDdm642codec,RBUF1);

MCASP_RSETH(SEEDdm642codec,XBUF0,codecdata);

其中处理算法(比如FIR滤波)为中断响应函数,打算通过McASP的发送中断产生的CPU中断来调用,但是中断总是不能响应,不知道是为什么?其中XINTCTL寄存器已经设置为0x00000020。

IRQ_setVecs(vectors);

IRQ_nmiEnable();
IRQ_globalEnable();
IRQ_map(IRQ_EVT_XINT0, 11);
IRQ_reset(IRQ_EVT_XNT0);

IRQ_enable(IRQ_EVT_XNT0);

此外,在使用原例程调试过程中发现,初次载入程序到DSP后并运行语音可以回放,但是暂停后再次运行时却不能回放声音,或者右击鼠标查看某个参数的数据时,声音也是突然就不能回放了,这可能是什么原因,望各位大神帮忙探讨探讨