TI中文支持网
TI专业的中文技术问题搜集分享网站

请教一个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)

Nancy Wang:

先参考demo程序看一下。
wiki.tiprocessors.com/…/McASP_FAQ_for_OMAPL13x_C674x_devices

user4755476:

回复 Nancy Wang:

谢谢您的建议,但是,还是出现了Transmitter underflow的现象。不知道初始化过程哪里存在问题?!

赞(0)
未经允许不得转载:TI中文支持网 » 请教一个McAsp关于AFIFO传送的问题
分享到: 更多 (0)