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

dsp6748 dma接收mcasp多个通道数据时,数据不对

TI工程师:

       见谅,由于这个问题在上个帖子没有解决,且上头催的紧,所以我重新开一贴,也把最新实验情况介绍一下。

        项目基本情况是这样的:slot大小为16,slot个数为2,  4个mic(a,b和c,d,分成两组)通过2个3106输送数据给dsp  mcasp(接收发送通道分别为2个),最后由edma搬运数据。dma  ACNT我配置的是8,配置为4无效果。两个3106单独配置时均可正常使用。信号源使用正弦波信号,一次只接通一个mic。

        数据大小为16位:此时只能接收到一个3106(1)传过来的数据,但是数据排列顺序不对,不是理论中的LLRR的类型(见图1) ,而且用示波器测量另一3106(2)数据输出通道时有非噪声外的数据,而dsp寄存器中则没有正弦波数据(见图2)。接收通道都硬件断开过,那时dsp只能接收到0.

图1  这是3106(1)的数据

图2  这是3106(2)的数据

        数据大小改为32位,slot大小也改为32,个数不变:此时3106(2)中数据可以读取到了,也是正确的,但接收到3106(1)的数据又不是正弦波数据,是无规律的数据,幅值跟正弦波数据差不多。见下图

这是3106(2)的数据

这是3106(1)的数据

     请问一下这到底是什么原因导致的?

Tony Tang:

user5054519 数据大小改为32位,slot大小也改为32,个数不变:此时3106(2)中数据可以读取到了,也是正确的,

McASP, McBSP的数据只能按32bit访问。也就是说小于32bit的数据也是占32bit宽,不会两个16bit的数据合成一个32bit的数。 

user5054519:

回复 Tony Tang:

有点不明白这跟接收不到正弦波信号没有关系吧

Tony Tang:

回复 user5054519:

可能跟你的DMA的配置有关系。

user5054519:

回复 Tony Tang:

我这个是用宏定义的,slot大小和数据大小的改变,dma中acnt会相应的变化的。而且mcasp单通道接收到多通道接收,dma配置也只需要改变acnt的吧

赞(0)
未经允许不得转载:TI中文支持网 » dsp6748 dma接收mcasp多个通道数据时,数据不对
分享到: 更多 (0)