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.

[参考译文] TLV320AIC3110:TLV320AIC3110音频问题

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1128569/tlv320aic3110-tlv320aic3110-audio-issue

器件型号:TLV320AIC3110

尊敬的 TI 团队:

    我们将以5.10 v 内核运行的 i.Mx7D 处理器用于我们的定制产品之一。 我们正在尝试将 TLV320AIC3110编解码器与 Freescale iMX7D 处理器连接。 我们使用了 tlv320aic31xx 作为驱动程序        文件。 但我们找不到所需的平台接口文件 IMX-tlv320aic31xx、因此我们使用了通用驱动程序"simple-card.c"文件。 我们在编解码器 MCLK 上获得24MHz、但无法听到来自的任何音频输出           扬声器、我们观察到下面附加了"aple"命令输出的任何错误。 我还在连接设备树更改。
    请就此问题提供您的意见。

e2e.ti.com/.../device_2D00_tree_2D00_changes.txt

谢谢、此致、

Sharmila D

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

    您好!

    您是否能够检测编解码器器件? 因此、编解码器的 MCLK 为24MHz、请提供寄存器转储。

    此致。

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

    您好!

    是的,我能够检测编解码器设备,如下所示

    root@if:~# cat /proc/asound/cards
    0 [tlv320aic31xxco]:tlv320aic31xx-c - tlv320aic31xx-codec
    tlv320aic31xx-codec
    root@if:~#

    是的、MCLK 为24MHz。 您能否提供有关寄存器转储的更多信息?

    谢谢、此致、

    Sharmila D

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

    在 Linux 中运行正常的 i2cdump 命令。

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

    您好!

    我收到 i2cdump 命令的设备忙错误。 我认为驱动程序使用了该器件。 请参阅随附的图片。

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

    我需要查看您的寄存器设置、以使用24MHz 时钟检查您的配置。

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

    您能否指定需要哪一个寄存器值? 我将从内核驱动程序转储特定的寄存器值。

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

    i2cdump 将具备所有功能、但如果您现在不能、我将需要 PAGE 0寄存 器0到 PAGE 0寄存器34来检查数字配置。

    一旦将其签出、我就需要输入/输出配置的其余部分。

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

    您好!

    i2cdump 命令的输出如下所示、

    root@impinj-D9-92-ef:~ aplay -v /etc/sample-3s.wav
    播放波形“/etc/sample-3s.wav”:有符号16位小端序,速率44100Hz,立体声
    插入 PCM:硬件 PCM 卡0 'tlv320aic31xx-codec'设备0子设备0
    其设置为:
    流:播放
    访问:rw_interleaved
    格式:S16_LE
    子格式:标准
    频道:2.
    价格:44100
    确切价格: 44100(44100/1)
    msbits:16.
    Buffer_size:22052
    Period_size:5513
    Period_Time:125011
    tstamp_mode:无
    tstamp_type:单调
    Period_step:1.
    AVAIL_MIN:5513
    Period_event:0
    START_THRESHOLD:22052
    STOP_THRESHOLD:22052
    Silence_threshold:0
    Silence_size:0
    边界:1445199872
    appl_ptr:0
    HW_PTR:0
    root@impinj-D9-92-ef:~
    root@impinj-D9-92-ef:~
    root@impinj-D9-92-ef:~
    root@impinj-D9-92-ef:~# i2cdump -f -y 0 0x18
    0 1 2 3 4 5 6 7 8 9 A b c d e f 0123456789abcdef
    00:00 00 01 56 03 21 07 14 90 00 08 02 00 80 .?V??????????????????
    10:08 00 08 02 80 04 00 00 01 0c 00 08 00????? ...??...
    20:00 00 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00……?…
    30:00 00 00 02 32 12 03 02 02 11 00 01 04 00 14……?2???????? ???
    40:0C 00 00 6F 38 00 00 00 00 00 00 10 D8 7e E3 ?...o8… ???~?
    50:00 00 80 00 00 00 00 00 7f 00 00 00 00 00 00 00 00 00 00 00 00 00...? ?。
    60:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    70:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    80:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    90:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    A0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    B0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    C0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    D0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    E0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    F0:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    root@impinj-D9-92-ef:~

    请检查上述数据、如有任何问题、请帮助我们。

    谢谢、此致、

    Sharmila

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

    请参阅我在从上面 i2cdump 获取的附加文件中的评论。

    e2e.ti.com/.../7587.config.xlsx

    我建议您参考我添加了注释的每个寄存器、并了解设置。

    我看到您将编解码器配置为主模式、因此 wclk、BCLK 来自编解码器、ADC 和 DAC 路径断电、输出模块也断电、因此请参阅器件寄存器并进行相应设置。

    您可能希望从产品文件夹下载此 PLL 计算器、以帮助您进行 PLL 配置。

    我在附加文件中给出了基于24MHz MCLK 和44.1kHz 采样的示例。

    https://www.ti.com/product/TLV320AIC3110?keyMatch=TLV320AIC3110&tisearch=search-everything&usecase=GPN

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

    您好!

      我已经尝试过设置寄存器值、正如您在答复中提到 的那样、通过更改寄存器值、我可以播放来自扬声器的音频。

      现在我正在测试麦克风, 我正在尝试使用 arecord 命令录制音频文件,但它不录制音频,并且 aplay 不会向录制的文件输出任何内容。 您能不能帮助我进行麦克风配置。

    root@impinj-D9-92-ef:/tmp# arecord -f S16_LE -c 2 -d 10 -t wav foobar.wav
    录制波'foobar.wav':有符号16位小端字节序、速率8000 Hz、立体声
    root@impinj-D9-92-ef:/tmp#

    root@impinj-D9-92-ef:/tmp# aplay -v foobar.wav
    播放波'foobar.wav':有符号16位小端字节序、速率8000 Hz、立体声
    插入 PCM:硬件 PCM 卡0 'tlv320aic31xx-codec'设备0子设备0
    其设置为:
    流:播放
    访问:rw_interleaved
    格式:S16_LE
    子格式:标准
    频道:2.
    价格:8000
    精确比率:8000 (8000/1)
    msbits:16.
    Buffer_size:4000
    Period_size:1000
    Period_Time:125000
    tstamp_mode:无
    tstamp_type:单调
    Period_step:1.
    AVAIL_MIN:1000
    Period_event:0
    START_THRESHOLD:4000
    STOP_THRESHOLD:4000
    Silence_threshold:0
    Silence_size:0
    边界:2097152000
    appl_ptr:0
    HW_PTR:0

    谢谢、此致、

    Sharmila D

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

    我不熟悉 Linux 音频、但从编解码器器器件侧、您需要配置 ADC 路径和时钟、这与您在扬声器输出上所做的 DAC 非常相似。

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

    您好!

      您能告诉我编解码器侧麦克风的寄存器设置吗?

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

    您可以参阅如下所示的数据表功能块、其中提供了要为所需路径设置的寄存器。

    PxRxx 代表页码和寄存器编号、例如 P1R50代表页1和寄存器50寄存器。

    在 数据表中查找寄存器映射、并根据您的要求设置数据值。

    有关模拟输入部分、另请参阅数据表第7.3.9节。