I2S的DSP模式接收不到数据
AT32F403A的I2S2使用DSP模式DMA接收,结果和STM32F303一样都是使用DMA不能接收,难道它俩bug一样? 什么是DSP模式?建议把代码贴出来看看 vt2017 发表于 2022-2-22 18:28什么是DSP模式?建议把代码贴出来看看
TI公司生产的数字信号处理芯片的多通道缓冲串行口 Younique 发表于 2022-2-22 19:10
TI公司生产的数字信号处理芯片的多通道缓冲串行口
403A是支持PCM标准的,不太确定是不是你说的DSP模式,至于DMA不能接收,最好是debug看看具体在哪个环节无法接收,是I2S收到数据了但没有通过DMA传出去?还是I2S数据寄存器就没有收到数据? vt2017 发表于 2022-2-22 19:38
403A是支持PCM标准的,不太确定是不是你说的DSP模式,至于DMA不能接收,最好是debug看看具体在哪个环节无 ...
现在已经解决了,是库函数的原因,用2.0.0就好了。另外他的2.0.0的I2S库函数和之前有些不一样,它芯片的I2S接口应该是和ST的一样,PCM模式只能设置双声道,可以通过该采样率来骗过单片机实现单声道,不过这样一来就和它手册中MCLK=256FS不相符,这一点最好改成和之前兼容STM32库版本一样。 Younique 发表于 2022-2-22 22:27
现在已经解决了,是库函数的原因,用2.0.0就好了。另外他的2.0.0的I2S库函数和之前有些不一样,它芯片的I ...
库函数原因具体是指两个库哪里存在差异吗?
403A是兼容103的,且实际上PCM模式下没有双声道的说法,这个模式根本就没有用于区分左右声道的WS信号。不过有一点可能容易被误会,就是比特率的算法是直接套用的RM所述的公式。
hoop 发表于 2022-2-24 19:51
库函数原因具体是指两个库哪里存在差异吗?
403A是兼容103的,且实际上PCM模式下没有双声道的说法,这个 ...
403A应该是兼容STM32F303的,而且都是M4,就连早期的库函数的编译出的bug都一样。PCM模式确实没有左右声道的说法,目前所有的32位单片机都是可以改它的FS寄存器设置的值来骗过单片机让它误当作双声道来处理,其实是让它WS(FS)信号减半处理的。估计雅特力的工程师也注意到了这一点,在最新版的库函数中直接默认为PCM模式是单声道处理的。不过这样一来,由于FS采样率是原来的一半(比如双声道FS=8000,单声道FS=4000),MCLK也就为原来的一半了。目前市面上的音频codec的过采样率或是所需要最低的晶振时钟一般都是256*FS,如果低了会影响处理。 dsp?
应该跟我知道的DSP不是一回事 估计 是想说 TDM。
页:
[1]