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.

[参考译文] PCM1865:仅针对 VINL1和 VINR1的受控模式设置

Guru**** 2460390 points
Other Parts Discussed in Thread: PCM1865

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/756972/pcm1865-slave-mode-setting-for-only-vinl1-and-vinr1

器件型号:PCM1865

我将具有25MHz XTAL 输入的 PCM1865用作参考时钟、并希望通过从外部器件提供 BCK 和 LRCK 来将 PCM1865用作从器件。

我正在寻找在44.1kHz 采样频率下对24位数据使用 PCM1865的方法。

以下是相关寄存器的状态、它保持在0x72的"等待时钟稳定"和0x75的"SCK_ERROR"。

    Adc1InputSelLeft (0x06):正常 VINL1[SE]
  Adc1InputSelRight (0x07):正常 VINR1[SE]
 PcmWordLengthRx (0x0B):24位
 PcmWordLengthTx (0x0B):24位
AudioSerialInterface (0x0B):I2S
        SCKXTALSel (0x20):XTAL
MasterOrSlaveMode (0x20):从器件
 AutoClockDetection (0x20):禁用
    AdcClockSource (0x20):SCLK
  Dsp2ClockSource (0x20):SCLK
  Dsp1ClockSource (0x20):SCLK
         PllControl (0x28):PLL 使能;SCLK;未锁定
       Powermode (0x70):模拟(加电)器件(加电)数字(运行)
       FilterStatus (0x71):2通道、解码滤波器(正常)、高通滤波器(禁用)
       MuteStatus (0x71):CH2_R (Unmute) CH2_L (Unmute) CH1_R (Unmute) CH1_L (Unmute)
      DeviceStatus (0x72):等待时钟稳定
采样频率(0x73):32-48kHz
   BckClkDivStatus (0x74):48
   SckClkDivStatus (0x74):384
      时钟状态(0x75):LRCK_HALT (OK) BMCK_HALT (OK) SCK_HALT (OK)
                      LRCK_ERROR (OK) BMCK_ERROR (OK) SCK_ERROR (ERROR)
     SupplyStatus (0x78):DVDD (Good) AVDD (Good) LDO (Good)

有人能让我看看从机模式的寄存器设置吗?

或者、有人能告诉我如何操作?

谢谢。

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

    您好、Ando、

    当您在从模式下运行 PCM186x 器件时、您不需要 SCK 输入。 因此、您可以从设计中移除 XTAL。 此外、您能否提供 BCK 和 LRCK 时钟频率值?

    您可以在自动配置模式下运行器件、通过 ADC 的内部时钟源、PLL 可以生成 DSP1和 DSP2、而无需为时钟和 PLL 分频器设置任何寄存器。  

    谢谢。

    此致、
    Ravi

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

    尊敬的 Ravi:

    感谢你的答复。

    我使用44.1kHz 采样、BCK 为2.85MHz (Fbck)、LRCK 为44.6kHz (Flrck)。

    这些频率源自100MHz 系统时钟:2.85MHz 来自64*FS,44.6kHz 来自64xFbck。

    我认为 Flrck 应该与 FS 相同。

    即使我设置 REG32的"CLKDET_EN"位、"SCK_ERROR"位或 REG117仍然为1、这意味着 SCKERR。

    DOUT 始终为0。

    接下来我可以做些什么来解决这个问题。

    谢谢。

    安多。

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

    通过这种方式、什么是"自动配置模式"?

    这是否意味着将 REG32的"CLKDET_EN"设置为1?

    谢谢。

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

    是的。

    如果您使用 BCK 作为 PLL 源(通过将寄存器0x28 - PLL_REF_SEL 设置为"1")、 并将 寄存器0x20 - CLKDET_EN 设置为"1"、我们可以启用自动检测器件将 bck 作为 PLL 源的位置、并将所有分频器设置为生成 ADC、DSP1和 DSP2时钟。 这是配置器件的最简单和最简单的方法、因为器件能够自行计算所有内部分频器设置。

    此致、
    Ravi

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

    您好!

    根据 PCM196x 数据表、当'CLKDET_EN'为1时、大多数与时钟相关的位被忽略。

    这包括 REG_0x28的"PLL_Enable"和"PLL_REF_SEL"。

    当'CLKDET_EN'为1时、这些位不能随着通过 SPI 端口写入而改变。

    最重要的是、我已经执行了您的建议、但它仍然为其输出提供了0x00。

    这里是 PCM1865从模式的寄存器值。

        Adc1InputSelLeft (0x06:0x01):正常 VINL1[SE]
      Adc1InputSelRight (0x07:0x01):正常 VINR1[SE]
     PcmWordLengthRx (0x0B:0x44):24位
     PcmWordLengthTx (0x0B:0x44):24位
    AudioSerialInterface (0x0B:0x44):I2S
            SCKXTALSel (0x20:0x81):XTAL
    MasterOrSlaveMode (0x20:0x81):从器件
     自动时钟检测(0x20:0x81):使能
             PllControl (0x28:0x00):PLL 禁用;SCLK;未锁定
           Powermode (0x70:0x00):模拟(上电)器件(上电)数字(运行)
           FilterStatus (0x71:0x1C):4通道、DecimationFilter (正常)、高通滤波器(启用)
           MuteStatus (0x71:0x1C):CH2_R (Mute) CH2_L (Mute) CH1_R (Unmute) CH1_L (Unmute)
          DeviceStatus (0x72:0x01):等待时钟稳定
     采样频率(0x73:0x03):32-48kHz
       BckClkDivStatus (0x74:0x37):64
       SCKClkDivStatus (0x74:0x37):384
           时钟状态(0x75:0x01):LRCK_HALT (ok) bck_HALT (ok) SCK_HALT (ok)
                               LRCK_ERROR (OK) BMCK_ERROR (OK) SCK_ERROR (ERROR)
          SupplyStatus (0x78:0x07):DVDD (Good) AVDD (Good) LDO (Good)

    Re-0x75中"SCK_ERROR"位的错误状态意味着什么?  'CLKDET_EN'为1时、'SCK_ERROR'代表什么剂量?

    您可以看到 PLL 已禁用且未锁定。

    此致、

    安多。