This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TLV320ADC3140:使用 I2S 接口时有噪声的麦克风输出数据

Guru**** 1831610 points
Other Parts Discussed in Thread: TLV320ADC3140
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1402803/tlv320adc3140-noisy-mic-output-data-with-i2s-interface

器件型号:TLV320ADC3140
主题中讨论的其他器件: TAS6424

工具与软件:

您好、E2E 成员、

我正在使用将 TLV320ADC3140 ADC 配置为从器件、DSP 作为主器件、这将驱动 BCLK = 3.072MHZ、FS = 48000khz。 ADC 连接到两个单端通道(MIC1>>IN1P_GPI1和 MIC2>>IN2P_GPI2)上的两个模拟麦克风。


使用 I2C 工具使用以下命令配置寄存器

i2cset -f -y 29 0x4c 0x01 0x01 //复位
i2cset -f -y 29 0x4c 0x02 0x81 //唤醒
i2cset -f -y 29 0x4c 0x07 0x70 //I2S 32位
i2cset -f -y 29 0x4c 0x73 0xC0 //启用 CH1和 CH2
i2cset -f -y 29 0x4c 0x74 0xC0 // CH1和 CH2时隙启用
i2cset -f -y 29 0x4c 0x75 0xE0 //上电和麦克风偏置
i2cset -f -y 29 0x4c 0x0C 0x20 // CH2时隙映射


我读回寄存器设置与 I2Cget ,一切看起来不错。 我的麦克风数据已路由到放大器、但输出时有噪声。 为了测试我的放大器,我已经将一个内部正弦 音发送到它,它是非常干净的。 确认了该问题与 ADC 设置有关。

仅供参考、DSP 配置为主器件、具有两个用于 ADC 接口的时隙(具有 BCLK_POLARY_FALLING 和 WS_POLARITY_FALLING)。 我能够在示波器中看到 BCLK 和 FS 的准确测量结果。

需要您的帮助以确定出了什么问题

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    是否可以将 ADC 输出的录音与已知输入(如正弦波)共享?

    谢谢。此致

    Lakshmi Narasimhan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的  Lakshmi Narasimhan:  

    目前无法从 ADC 为您提供记录、我将在下面的简单和基本配置中测试设置。

    我已直接在 TAS6424 Amp 的2个插槽上启用了麦克风源。 正如我提到的、要测试 AMP 输出、可以清楚地听到 DSP 内部生成并路由到 AMP 的正弦音。

    麦克风语音带有噪音。

    您能否确认我的配置的寄存器设置以及 I2S 时隙映射正确无误。

    此致

    还是 Sajad

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Sajad:

    对于2通道 I2S 接口、我们在 FSYNC 的下降沿获得左通道数据、在 FSYNC 的上升沿获得右通道数据。

    根据线程中所述的配置、通道1保持在默认时隙(左0)、通道2配置为在右侧时隙0 (根据 P0R0x0C 配置)。

    在 DSP 侧、您提到了 BCLK_POLARY_FALLING (对于 I2S 器件、会在 BCLK 下降沿发出数据)和 WS_POLARY_FALLING (左通道数据从 FSYNC 下降沿开始)。 I2S 中的另一个特性是、在 FSYNC 转换后(有一个围绕 FSYNC 转换的1 BCLK 移位和通道数据的 MSB)每个通道的 MSB 位都会从1BCLK 中给出。 您能否确认 I2S 协议的 DSP 中是否也考虑到了这一点?

    该线程中提到的另一点是、麦克风输入作为单端输入提供。 对于单端输入、在 CHx_CFG0寄存器中、必须为模拟单端输入设置 CHx_INSRC 字段。

    谢谢。此致、

    Lakshmi Narasimhan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Lakshmi Narasimhan:

     (通道数据有一个围绕 FSYNC 转换和 MSB 的1 BCLK 移位。)  是的、这是 DSP 端计算出来的。请参阅下面 DSP 预设的图


    我现已将麦克风输入路由到 ALSA 捕获驱动器、但也看到了相同的噪声。 我能够为您的 referencee2e.ti.com/.../music.wave2e.ti.com/.../recsine.wav 录制一些附加的 wav 文件(正弦1kHz 和音乐)

    执行的另一个示例
    i2cset -f -y 29 0x4c 0x3C 0x20

    i2cset -f -y 29 0x4c 0x41 0x20

    此致
    还是 Sajad

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Sajad:

    根据以 Audacity 模式打开记录、记录的值看起来始终为0、+满量程或-满量程之一。

    无论正弦音或音乐如何、I2S 录音似乎始终只是这3个值之一。

    是否可以通过示波器屏幕截图验证器件 I2S 输出也始终与此相对应?

    此外、您能否共享 ADC 部分的原理图来验证连接?

    谢谢。此致、

    Lakshmi Narasimhan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的  Lakshmi Narasimhan:

    感谢您指出标度值。 这让我不得不研究 DSP 代码中对麦克风数据输出执行的转换、其中存在问题。
    现在我可以听到清晰的音频了。
    感谢所有的帮助。

    此致

    还是 Sajad