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.

[参考译文] TLV320ADC5140:TLV320ADC5140 未检测到采样率或 FSYNC 比率

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1523327/tlv320adc5140-tlv320adc5140-not-detecting-sample-rate-or-fsync-ratio

器件型号:TLV320ADC5140

工具/软件:

我将 TLV320ADC5140 连接到 STM32H750 开发板。

我在 STM32 上针对 16 位音频、4 个输出插槽和 16kHz 采样率配置了串行音频外设。

TLV320ADC5140 配置为 4 个单端输入通道、在 16 位 TDM 模式下输出 4 个时隙 — 该器件作为从器件运行。

遗憾的是、TLV320ADC5140 未在 ASI 总线上检测到采样率以及 BCLK 与 FSYNC 的比率、仅报告两者的错误。

以下是串行总线的示波器轨迹:

黄色迹线为 FSYNC、蓝色为 BCLK、橙色为数据。 从频率测量中可以看出、FSYNC 为 16kHz、BCLK 为 1.024MHz、FSYNC 脉冲之间有 64 个 BCLK 周期。

下面是串行音频总线初始化后 TLV320ADC5140 寄存器的转储文件:

10:38:19.575 ->[0x02] SLEEP_CFG =*0x81 [0x00]
10:38:19.575 ->[0x05] SHDN_CFG = 0x05 [0x05]
10:38:19.575 ->[0x07] ASI_CFG0 =*0x00 [0x30]
10:38:19.575 ->[0x08] ASI_CFG1 = 0x00 [0x00]
10:38:19.575 ->[0x09] ASI_CFG2 = 0x00 [0x00]
10:38:19.575 ->[0x0B] ASI_CH1 = 0x00 [0x00]
10:38:19.575 ->[0x0C] ASI_CH2 = 0x01 [0x01]
10:38:19.575 ->[0x0D] ASI_CH3 = 0x02 [0x02]
10:38:19.575 ->[0x0E] ASI_CH4 = 0x03 [0x03]
10:38:19.575 ->[0x0F] ASI_CH5 = 0x04 [0x04]
10:38:19.575 ->[0x10] ASI_CH6 = 0x05 [0x05]
10:38:19.575 ->[0x11] ASI_CH7 = 0x06 [0x06]
10:38:19.575 ->[0x12] ASI_CH8 = 0x07 [0x07]
10:38:19.575 ->[0x13] MST_CFG0 = 0x02 [0x02]
10:38:19.575 ->[0x14] MST_CFG1 = 0x48 [0x48]
10:38:19.575 ->[0x15] ASI_STS = 0xFF [0xFF]
10:38:19.575 ->[0x16] CLK_SRC = 0x10 [0x10]
10:38:19.575 ->[0x1F] PDMCLK_CFG = 0x40 [0x40]
10:38:19.575 ->[0x20] PDMIN_CFG = 0x00 [0x00]
10:38:19.575 ->[0x21] GPIO_CFG0 = 0x22 [0x22]
10:38:19.575 ->[0x22] GPO_CFG0 = 0x00 [0x00]
10:38:19.575 ->[0x23] GPO_CFG1 = 0x00 [0x00]
10:38:19.575 ->[0x24] GPO_CFG2 = 0x00 [0x00]
10:38:19.575 ->[0x25] GPO_CFG3 = 0x00 [0x00]
10:38:19.575 ->[0x29] GPO_VAL = 0x00 [0x00]
10:38:19.575 ->[0x2A] GPIO_MON = 0x00 [0x00]
10:38:19.575 ->[0x2B] GPI_CFG0 = 0x00 [0x00]
10:38:19.575 ->[0x2C] GPI_CFG1 = 0x00 [0x00]
10:38:19.575 ->[0x2F] GPI_MON = 0x00 [0x00] 
10:38:19.575 ->[0x32] INT_CFG = 0x00 [0x00] 
10:38:19.575 ->[0x33] INT_MASK0 = 0xFF [0xFF]
10:38:19.575 ->[0x36] INT_LTCH0 =*0x40 [0x00]
10:38:19.575 ->[0x3B] BIAS_CFG = 0x00 [0x00]
10:38:19.575 ->[0x3C] CH1_CFG0 =*0x20 [0x00]
10:38:19.575 ->[0x3D] CH1_CFG1 = 0x00 [0x00]
10:38:19.575 ->[0x3E] CH1_CFG2 = 0xC9 [0xC9]
10:38:19.575 ->[0x3F] CH1_CFG3 = 0x80 [0x80]
10:38:19.575 ->[0x40] CH1_CFG4 = 0x00 [0x00]
10:38:19.575 ->[0x41] CH2_CFG0 =*0x20 [0x00]
10:38:19.575 ->[0x42] CH2_CFG1 = 0x00 [0x00]
10:38:19.575 ->[0x43] CH2_CFG2 = 0xC9 [0xC9]
10:38:19.575 ->[0x44] CH2_CFG3 = 0x80 [0x80]
10:38:19.575 ->[0x45] CH2_CFG4 = 0x00 [0x00]
10:38:19.575 ->[0x46] CH3_CFG0 =*0x20 [0x00]
10:38:19.575 ->[0x47] CH3_CFG1 = 0x00 [0x00]
10:38:19.575 ->[0x48] CH3_CFG2 = 0xC9 [0xC9]
10:38:19.575 ->[0x49] CH3_CFG3 = 0x80 [0x80]
10:38:19.575 ->[0x4A] CH3_CFG4 = 0x00 [0x00]
10:38:19.575 ->[0x4B] CH4_CFG0 =*0x20 [0x00]
10:38:19.575 ->[0x4C] CH4C_CFG1 = 0x00 [0x00]
10:38:19.575 ->[0x4D] CH4_CFG2 = 0xC9 [0xC9]
10:38:19.575 ->[0x4E] CH4_CFG3 = 0x80 [0x80]
10:38:19.575 ->[0x4F] CH4_CFG4 = 0x00 [0x00]
10:38:19.575 ->[0x52] CH5_CFG2 = 0xC9 [0xC9]
10:38:19.575 ->[0x53] CH5_CFG3 = 0x80 [0x80]
10:38:19.575 ->[0x54] CH5_CFG4 = 0x00 [0x00]
10:38:19.575 ->[0x57] CH6_CFG2 = 0xC9 [0xC9]
10:38:19.575 ->[0x58] CH6_CFG3 = 0x80 [0x80]
10:38:19.575 ->[0x59] CH6_CFG4 = 0x00 [0x00]
10:38:19.575 ->[0x5C] CH7_CFG2 = 0xC9 [0xC9]
10:38:19.575 ->[0x5D] CH7_CFG3 = 0x80 [0x80]
10:38:19.575 ->[0x5E] CH7_CFG4 = 0x00 [0x00]
10:38:19.575 ->[0x61] CH8_CFG2 = 0xC9 [0xC9]
10:38:19.575 ->[0x62] CH8_CFG3 = 0x80 [0x80]
10:38:19.575 ->[0x63] CH8_CFG4 = 0x00 [0x00]
10:38:19.575 ->[0x6B] DSP_CFG0 = 0x01 [0x01]
10:38:19.575 ->[0x6C] DSP_CFG1 = 0x40 [0x40]
10:38:19.575 ->[0x6D] DRE_CFG0 = 0x7B [0x7B]
10:38:19.575 ->[0x70] AGC_CFG0 = 0xE7 [0xE7]
10:38:19.575 ->[0x73] IN_CH_EN = 0xF0 [0xF0]
10:38:19.575 ->[0x74] ASI_OUT_CH_EN =*0xF0 [0x00]
10:38:19.575 ->[0x75] PWR_CFG =*0xE0 [0x00]
10:38:19.575 ->[0x76] DEV_STS0 =*0xF0 [0x00]
10:38:19.575 ->[0x77] DEV_STS1 =*0xE0 [0x80]
10:38:19.575 ->[0x7E] I2C_CKSUM =*0x18 [0x00] 

DEV_STS 寄存器显示通道已启用且上电。 如您所见、ASI_STS 报告 0xFF、但我不确定其中的原因。

任何指示都将非常感谢。

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

    尊敬的 Kevin:

    执行以下操作:

    1) 上述转储,是回读转储,还是正在执行的写入操作列表?

    2) 您是否可以共享所有正在配置的寄存器的转储(如果我们可以转储整个页 0 寄存器,这也没关系)。

    谢谢。此致、

    Lakshmi Narasimhan

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

    您好:

    1) 上述是从器件读回所有寄存器

    2) 值旁边有*的值在方括号中显示当前寄存器值与 POR 值

    啊、我刚刚意识到上面的一些寄存器缺失。 我将更新该列表以显示所有这些选项。

    要配置的寄存器为:

    唤醒
    0x02 = 0x81
    16 位字长
    0x07 = 0x00
    单端输入
    0x3C = 0x20
    0x41 = 0x20
    0x46 = 0x20
    0x4B = 0x20
    启用输入通道
    0x73 = 0xF0
    启用输出时隙
    0x74 = 0xF0
    开启通道电源
    0x75 = 0xE0

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

    尊敬的 Kevin:

    我来看看配置。

    同时、请分享上述请求的寄存器转储。

    此外、您还能否确认 BCLK 和 FSYNC 信号是稳定的(没有瞬时干扰或时钟频率变化?)

    谢谢。此致、

    Lakshmi Narasimhan

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

    你好 Lakshmi、

    如前所述、我已经提供了完整的寄存器转储。

    BCLK 和 FSYNC 信号稳定、没有干扰或频率变化。

    谢谢、
    Kevin

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

    尊敬的 Kevin:

    我来在 EVM 上进行设置、看看观察结果是否匹配。

    谢谢。此致、

    Lakshmi Narasimhan

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

    尊敬的 Lakshmi:

    我只是想知道您是否成功地重新创建了这个吗? 这对我来说是一个阻碍因素。

    谢谢、
    Kevin

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

    尊敬的 Kevin:

    我将 EVM 设置为相同的 FSYNC (16kHz) 和 BCLK (1.024MHz)、ASI_STS 寄存器读回 0x14、这是此采样率和时钟的预期结果。

    您还能否确认 BCLK/FSYNC 信号是否满足数据表中提到的时序要求?

    谢谢。此致、

    Lakshmi Narasimhan

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

    我已经检查了信号并确认它们符合时序要求。 但是、我注意到的一点是、BCLK 似乎 以几 ns 的时间引导 FSYNC、但数据表中的时序图指示 FSYNC 的建立时间至少应为 8ns。 似乎无法更改 STM32 SAI 外围设备以将其考虑在内... 除非我错过了一些东西。

    我也不理解如果 ASI 频率无效、为什么器件不会关闭通道。 STATUS 寄存器仍会显示通道已上电并已启用。

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

    您好、

    我将离开办公室直到下周、因此我的回复将推迟到下周。

    对延迟深表歉意  

    谢谢。此致、

    Lakshmi Narasimhan