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

mcbsp和tlv320通信时,设置32k,16bit,双声道,采集数据左右声道相反

mcbsp是从模式,tlv320是主模式。采用i2s模式传输。

mcbsp设置的单相位,每个相位两个word,每个word16bit。

设置32k的时候,CLKR是4.096MHz。

在mcbsp capture start中的顺序:

1、设置FSR和DR成普通gpio功能。

2、GRST = 0

      FRST = 0

      RRST = 0

3、udelay  5

4、RRST = 1

     RINTM = 3

5、udelay  5

6、RRST = 0

7、start edma

8、等待FSR变成有效电平

9、RRST = 1

     FSR作为mcbsp功能,而不是普通gpio功能。

当我设置步骤3和5的udelay为2的时候,左右声道就正常的。这是什么原因呢?

datasheet上说是2个CLKR的长度,但是2us和5us都比2个CLKR大,有什么区别吗?

udelay5的情况下:播放是没有问题的。采集的时候配置成8k、16k也都是正常的。

lingpei ye:

标准的2个CLRK应该在986ns左右,软件实现的延迟也不能实现很精确。

在线等。。。。

Chris Meng:

请问是一直反,还是运行一段时间后反了?

请参考processors.wiki.ti.com/…/McBSP_Channel_Swapping。

lingpei ye:

回复 Chris Meng:

一直反的,没有出现一会左一会右的情况。而且在start中也做了处理,完全按照datasheet中建议的初始化步骤来的。

lingpei ye:

回复 Chris Meng:

一直反的,没有出现一会左一会右的情况。而且在start中也做了处理,完全按照datasheet中建议的初始化步骤来的。

lingpei ye:

回复 lingpei ye:

不要沉啊,懂的人帮忙一起讨论讨论。

赞(0)
未经允许不得转载:TI中文支持网 » mcbsp和tlv320通信时,设置32k,16bit,双声道,采集数据左右声道相反
分享到: 更多 (0)