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:输入多路复用器胜出#39;t 允许4个差分输入通道

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

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/700808/pcm1865-the-input-multiplexer-won-t-allow-4x-differential-input-channels

主题中讨论的其他器件:PCM1865

您好!

我设置了一个 PCM1865、并在具有4个差分音频输入的4通道 TDM 输出模式下工作。

我遇到的问题是、无论我使用哪种多路复用器设置组合、每次都无法从超过3个通道获取值、因为其中一个通道的读数始终接近于零。

这是我的设置代码:

void ADC_init (void)
{
__PCM1865_setPage (0);
__PCM1865_setreg (0x00、0xFE);//重置所有寄存

器__PCM1865_setreg (0x01、0x20);// PGA CH1_L 更改为20dB
;

// PCM1865_setreg (0x02、0x20dB
);//将 PCM1865_setR (0x20dB)= 0x2065_PGA = 0x20dB;0x2065_setR (0x20dB);//将 PCM1865_CCA_setR = 0x2065_02dB = 0x20dB;0x20dB = 0x20dB;0x2065_02/ 0x20dB;0x20CCA_setR = 0x65_CCA_setR = 0x20dB;0x65_02/ 0x65_02dB;0x20dB = 0x65_02/ 0x65_02/ 0x20dB;0x65_02_02_02_02_02

//极性:正常、通道:VIN1P、VIN1M(CH1)
__PCM1865_setreg (0x07、 0x50);//极性:正常、通道:VIN2P、VIN2M(CH2)
__PCM1865_setreg (0x08、0x60);//极性:正常、通道:VIN4P、VIN4M(CH3)
__PCM1865_setreg (0x09、0x60);//极性:正常、 通道:VIN3P、VIN3M (CH4)

__PCM1865_setreg (0x0A、0x00);//次要 ADC 输入:无选择
__PCM1865_setreg (0x0B、0x0F);// RX WLEN:32位,TX WLEN:16位,FMT:TDM 格式
_ PCM1865_setreg (0x65_0F

);// PCM1865_tm = 0x65_set1;0xPCM1865_tm = 0xPCM1865_tm (0x30_tm)
// GPIO3_FUNC - SCK OUT、GPIO2_FUNC - GPIO2

__PCM1865_setreg (0x1B、0x01);// DIN_RESMP:重新采样 DIN (具有 bck __PCM1865_setreg (
0x20、0x01)的上升沿);// MST_MODE:SLAVE;CLKDET_EN
}:ENABLE 

我能够以某种组合从所有4个输入中获取数据、但不能同时获取。

是否存在明显的配置问题或更有可能出现硅错误?

感谢您的帮助!

James

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

    大家好、James、

    欢迎使用 E2E、感谢您关注我们的产品!

    使用的寄存器设置看起来不错、但我想在我的 EVM 上尝试它们。 我将进行一些测试、并在获得一些结果后立即返回给您。 您是否正在使用 EVM 进行测试? 在测试时、为所有通道提供了什么输入?

    此致、

     Diego Melendez López í a
      音频应用工程师

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

    您好、Diego、  

    感谢您的快速响应。

    我使用的是自定义 PCB、其中1kHz 2V 正弦波进入输入端。

    我知道 ADC 和输入电路工作正常、因为我可以在具有不同多路复用器配置的所有通道上获得预期结果、但并非所有通道都同时工作。

    感谢你的帮助。

    James

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

    大家好、James、

    我使用您的代码对 EVM 进行了一些测试、PCM1865能够同时在所有四个通道上发送数据。 数字数据与当前设置没有问题、这使我认为 TDM 总线可能存在一些问题。 是否可以隔离 PCM1865的 TDM 总线并检查四个通道的数字数据是否同时发送? 此外、您是否能够在不同的电路板上复制此行为?

    此致、

     Diego Melendez López í a
      音频应用工程师

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

    您好、Diego、  

    感谢您运行测试。 我做了更多的测试、但仍然有完全相同的问题。

    我现在将器件作为主器件运行并在 MCU 上使用 Sai Slave Rx、在包含缺失数据的通道上可以看到一个有趣的赝像、因为 SDO 线路会像不是由 PCM 驱动一样衰减。 我已包括一些示波器屏幕截图、其中显示了按顺序向每个通道施加的2V 峰峰值正弦波信号。

    这是我的当前配置设置:

    _PCM1865_setPage (0);
    __PCM1865_setreg (0x00、0xFE);//重置所有寄存
    
    器__PCM1865_setreg (0x01、0x20);// PGA CH1_L 设置为20dB
    __PCM1865_setreg (0x02、0x20);//
    
    
    将 PCM1865_setR (0x20dB)设置为0x65_PGA = 0x20dB;//将 PCM1865_setR = 0x2004 (0x20dB)设置为0x20dB;// PCM1865_CCA_setR = 0x20dB;// PCM1865_CCA_setR = 0x20dB = 0x20dB;0x65_02/ PCM1865_02/ PCM1865dB;0x20dB = 0x20dB;0x65_02_02/ PCM1865_setR = 0x20dB;0x65_02/ PCM1865dB = 0x20dB;0x20dB
    
    正常、通道:VIN1P、VIN1M(CH1)
    __PCM1865_setreg (0x07、 0x50);//极性:正常、通道:VIN2P、VIN2M(CH2)
    __PCM1865_setreg (0x08、0x60);//极性:正常、通道:VIN4P、VIN4M(CH3)
    __PCM1865_setreg (0x09、0x60);//极性:正常、 通道:VIN3P、VIN3M (CH4)
    
    __PCM1865_setreg (0x0A、0x00);//次要 ADC 输入:无选择
    __PCM1865_setreg (0x0B、0x0F);// RX WLEN:32位,TX WLEN:16位,FMT:UNC 格式__PCM1865_setreg (0x65_0F
    
    
    );// x PCM1865_SCM1865_OUT = 0xPCM1865_TDMD (0x65_041)
    // GPIO3_FUNC - SCK OUT、GPIO2_FUNC - GPIO2
    
    __PCM1865_setreg (0x1B、0x01);// DIN_RESMP:重新采样 DIN (具有 bck __PCM1865_setreg (
    0x20、0x11)的上升沿);// MST_MODE:MASTER;CLKDET_EN:ENABLE 

    使用正常数据传输通道1

    使用正常数据传输通道2

    使用正常数据测量通道3

    通道4显示缺少数据

    如您所见、缺失通道上存在明显衰减、PCM 中没有数据输出。

    谢谢

    James

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

    大家好、James、

    感谢您的详细反馈。 代码看起来不错、与我之前使用过的代码相同、唯一的区别是启用主模式。

    从您共享的捕获中、我可以看到 BCLK 频率为64×FS、这在 TDM 模式下实际上不受支持。 当 PCM1865配置为 TDM 模式时、应提供256×FS BCLK。 这是器件的固定要求、您可以在数据表的 TDM 部分中找到更多信息。 我认为您遇到的问题与此相关;您可以尝试256×FS BCLK 吗?

    此致、

     Diego Melendez López í a
      音频应用工程师

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

    这就是问题所在! 它现在工作得非常好。

    非常感谢!

    James