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.

[参考译文] ADS1251:关于同步模式。

Guru**** 2579325 points
Other Parts Discussed in Thread: ADS1251, ADS1252

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/796596/ads1251-about-synchronization-mode

器件型号:ADS1251
主题中讨论的其他器件: ADS1252

你(们)好。

请让我了解如何阅读该表。

我想使用同步模式、但我认为它在我们的系统中不起作用。

根据该表、

tDRAY 是否表示时钟需要被计数384次(典型值)?

如果是这样、同步模式需要1536个 CLK、因为它说它需要将 SCKL 拉至4倍。

正确吗?

此致。

Kengo。

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

    您好 Kengo、

    /DRDY 引脚通常用作 MCU 的中断、以指示 ADS1251何时完成转换。 然后、MCU 可以使用该中断来读取 ADC 的数据、而无需对时钟进行计数。

    要实现多个 ADC 的同步、您需要提供计时器延迟或对/DRDY 下降沿进行计数、以了解 ADS1251何时进入同步模式。 例如、如果您有两个 ADS1251器件、并且希望同步它们、以便它们的转换及时对齐、您将...

    1. 将两个 ADC 上的 SCLK 信号设置为高电平。 注意:您可能需要对 MCU 进行编程、以将 SCLK 引脚作为 GPIO 进行控制(并且在同步完成后仅将其设置回 SPI 外设功能)。

    2. 然后等待至少5个转换完成(但不超过20个)。 我建议至少比4个转换周期多1个、因为您必须从/DRDY 变为低电平时等待至少4个转换周期;因此、等待5个/DRDY 下降沿可确保任何当前转换完成、并且您已等待最少4个转换周期。 如何实现此等待时间由您决定...

      1. 您可能需要对/DRDY 中断的数量进行计数、或

      2. 您可以将计时器设置为等待至少5 * 384 * CLK。 例如、如果您的 CLK 频率为8MHz、则一个时钟周期为125ns、您需要等待至少5 * 384 * 125ns = 240us、但延迟不超过4倍(或960us)。 如果您担心计时器和 CLK 的精度、请选择介于这些值之间的延迟。

    3. 在等待器件进入同步模式后、您现在可以将两个 ADC 上的 SCLK 信号设置为低电平。 现在、两个器件的/DRDY 下降沿应该非常好地按时间对齐、这表明器件已同步。 请注意、在 ADS1251进入同步模式之前、SCLK 信号需要始终保持高电平!
       

    为了确保两个 ADC 保持同步、您可能需要定期重新同步(如果每个 ADC 都有自己独特的时钟源)、或者更好地确保您与两个 ADC 共享相同的 CLK 信号。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Chris。
    非常感谢您的回答。
    我了解它的工作原理。

    您能再多说一件事吗?
    您是否有要同步的示例代码?
    我想与我们的波形进行比较。

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

    您好 Kengo、

    遗憾的是、我没有 ADS1252的任何示例代码;但是、由于函数调用在任何给定的 MCU 上创建中断将是唯一的、因此示例可能有用、也可能不有用。 但是、用于同步的伪代码将如下所示...

    将 START 引脚设置为高电平
    延迟(设置计时器中断或计数/DRDY 中断)
    将 START 引脚设置为低电平

    如果只使用 MCU 的内置延迟函数会更简单、那么也许只需调用该函数来实现延迟并将延迟时间设置为480us (对于上面给出的8MHz 时钟示例)、以便等待大约10个/DRDY 周期。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Chris。
    感谢您的善意回复。
    我明白了。
    如果我有其他问题、我将再次与您联系。

    此致。
    Kengo。