我现在使用了4个mic–a,b,c,d, a,b和c,d分别共用一个aic3106,dma通过两个mcasp接收通道读取数据。问题是mic a或者b外接正弦信号时,dma读取不到正弦信号,而c或d外接正弦信号时dma能够读取到。但用示波器测量两个3106时均有非噪音数据发送给dsp,下面图1和图2分别是mic a和 mic c外接正弦信号时dma buff接收到的数据,请问这是什么原因导致的?
图1
图2
Shine:
mcbsp+dma能读取c或者d的数据,说明mcbsp, dma的配置正确,两个mcbsp接口主要是复用管脚的设置不同,建议去音频论坛咨询,看是不是aic3106的配置问题,先确定aic3106能输出正确的数据给DSP。
user5054519:
回复 Shine:
aic3106的配置应该是基本没什么问题的,因为我们多个项目都用到过这款ic,而且我自己测试过两个3106分别只启动一个的话,都是可以正常工作的,mica和b的数据此时也是能读取到的,但两个3106一起用就不可以了,很奇怪。
Tony Tang:
回复 user5054519:
硬件上可以把ab通道的数据线断开吗?
user5054519:
回复 Tony Tang:
硬件上断开倒是可以,但是这有什么作用呢
Tony Tang:
回复 user5054519:
断开数据线,看采到的数据是什么?如果能在断开后,再下拉到GND,确保其为0,看收到的数据是否全为0 ,来确认接收的问题,还是AIC3xxx的问题?
user5054519:
回复 Tony Tang:
但我只用其中任意一个3106,相应配置只需修改dma部分acnt和屏蔽mcasp的一个接收通道就行了,收发数据都是正常的啊这样不能排除是3106的问题吗
user5054519:
回复 user5054519:
试过了接收全是0
user5054519:
回复 Tony Tang:
刚试过了,接收确实全是0