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.

[参考译文] PCM1795:用于 PCM1795的32位 I2S

Guru**** 2528900 points
Other Parts Discussed in Thread: PCM1795

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1001371/pcm1795-32bit-i2s-for-pcm1795

器件型号:PCM1795

你(们)好

我正在使用设置为32位 I2S 模式的 PMC1795。(fs=128 bck、FMT[2:0]=100)

I2S 在数据表中具有相同的24位和32位数据起始位置。

但在实际操作中、32位 I2S 位于右对齐位置。

我已经多次阅读数据表、搜索可以解释这种行为的内容、但我无法理解。

数据表是否错误?

最恰当的考虑。

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

    大家好、Ootsuka-San、

    您能否澄清您的问题? PCM1795要求数据保持左对齐、即使在下一个 LRCK 边沿之前有额外的 bck 周期。  您的 I2S 主机输出是什么?

    谢谢、

    Paul

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

    感谢你的答复。

    I2S 主机为 LRCK 提供采样周期、bck = 128fs、SCLK = 256fs。(Duty= 50)

    数据输出正弦波数据、从 LRCK 边沿延迟1 bck、固定值(0xAAAA-AAAA)输出到无效数据部分。

    当24位 I2S 被置位时、一个正弦波被输出。  但当32位 I2S 置位时、输出固定电平。


    我不明白发生了什么。

    近况如何?

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

    大家好、Ootsuka-San、

    对于此器件、这两种格式应该都可以。  它们都受支持。  您能否使用示波器确认模式更改后 I2S 格式仍然正确? 两个通道都不工作、还是只有一个?

    这是一种奇怪的格式-为什么要使用 bck=128×FS?

    谢谢、

    Paul

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

    谢谢 Frost 先生。
    我使用示波器测量了波形。
    正确通道的状态相同。

    • 零输出

      • 正弦输出(左通道)

        •  0x7FFF-8000输出。 (左声道)

        CH1:电流到电压转换器输出
        通道2:数据
        CH3:LRCK
        CH4:bck

        无效数据为0x555-5555。(添加了无效数据以调查原因。)
        我很抱歉犯了个错误。

        没有理由使用 bck=128xfs。
        当然、也可以将其与 bck=64xfs 一起使用。
        但在此之前、我想找出原因。

        最恰当的考虑。

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

        大家好、Ootsuka-San、

        当您将输出设置为32位时、I2S 主机是否可以继续移动数据? 从您的正弦波示例中、在最高有效8位中、似乎没有有效数据:

        这可能只是发送的特定代码、但值得检查以确认您是否在输出上看到非常低的振幅正弦波(它将是1/256满量程值)。

        如果您在 LRCK 上采样、您应该会看到这些最高有效8位经常变化。

        谢谢、

        Paul

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

        弗罗斯特先生,感谢你的答复。

        再次测量了波形。
        由于它是正弦波、因此前8位会发生变化。

        上半场

        下半场

         对于24位 I2S 设置和32位 I2S 设置、I2S 输入波形相同。
        当无效数据为0x0000-0000时、输出为零电平。(32位 I2S 设置)

        我是否可以采取任何措施来找出原因?

        最恰当的考虑。

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

        当我有机会时、我会在实验室中尝试这种方法、可能是今天。

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

        谢谢 Frost 先生。

        在实验室中尝试它的结果是什么?
        期待收到您的回复。

        最棒的地方

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

        大家好、Ootsuka-San、

        我确认了该器件在使用24位左对齐数据的 bck=128xFS 时工作。 遗憾的是、我的资源(AP2722)无法生成32位左对齐数据、因此我无法确认客户的确切行为找到合理的解释、说明为什么一个条件有效、另一个条件无效。  

        移除 I2S 数据线路中的0x5555内容是否会改变此行为? 也就是说、如果您将这32位的数据线设为低电平、它是否仍然起作用/不起作用?

        谢谢、

        Paul

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

        你好、Frost 先生。
        感谢您的试用。

        将无效数据从0x5555更改为0x0000时、输出将停止。
        将无效数据从0x5555更改为0x7fff 时、输出将为全范围。
        (FMT[2:0]=100:32位 I2S 设置)

        我认为 I2C 的寄存器设置可能会有问题。
        我更改了设计以在 SPI 中设置寄存器。
        但是、当 FMT [2:0]= 100时、输出无效数据。

        设备将会发货、您将无法尝试。
        结果是中途、但它将关闭一次。

        感谢您的支持。