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.

请教一个McAsp关于AFIFO传送的问题

在OMAPL138上,原来是通过Transfers Through the Peripheral Configuration Bus 访问McAsp的XRBUF,功能是完好的,由于现在需要使用AFIFO,所以改为通过Transfers through the DMA Port 访问M从ASP的AFIFO,但是,这样修改后,出现一个问题,在TX方向,DMA已经把数据写到AFIFO的缓冲区了,可是并没有看见缓冲区的数据被移出到the XRSR[n] shift registers,也就是The XDATA flag一直没有置位,就好像没有发生TX一样。不知道为什么?请大家指教一下!谢谢!

另外,补充说明一下,RX方向是没有问题的,改为通过Transfers through the DMA Port 访问M从ASP的AFIFO。

至于,相关的配置,由于Transfers Through the Peripheral Configuration Bus的配置能正常工作的,所以在此基础上,增加了对AFIFO的配置,然后DMA的地址改为AFIFO的地址。

Transmit Bit Stream Format Register (XFMT) : &=  ~(0x08)

Write FIFO Control Register (WFIFOCTL) :=(1<<16)+(40 <<  8) + (1)