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.

[参考译文] ADS124S08:请求数据转换软件实施指南#2

Guru**** 2543550 points
Other Parts Discussed in Thread: ADS124S08

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1569489/ads124s08-requesting-data-conversion-sw-implement-guide-2

器件型号:ADS124S08


工具/软件:

如前所述、我使用实施了软件来读取模拟值 ASD124S08 。 在测试通信时、我遇到了一些我想问的问题。

首先、我使用了 连续转换模式 进行数据转换。 在初始化时、我按如下所示设置寄存器、然后定期更新 INPMUX IDACMUX 值、切换通道和使用读取不同的模拟输入 RDATA 命令。

ID:0x00 (ADS124S08)
状态:0x80
INPMUX:通道 1 (AIN1、AIN2)、通道 2 (AIN5、AIN6)、通道 3 (AIN9、 AIN10)
PGA:0xEA
数据速率:0x14
REF:0x01
IDACMAG:0x07
IDACMUX:通道 1 (AIN3、AIN0)、通道 2 (AIN7、AIN4)、通道 3 (AIN11、 AIN8)
VBIAS:0x00
系统:0x10

通过这种方式、我确认了附件图像中显示的波形:黄色= DRDY、红色= CS、蓝色= SCLK。

以下是我的问题:

  1. I set SPS = 20 、所以我期望 DRDY(高周期)对应于大约的转换时间 50ms 。 实际上、我在测量时测量了它 53–57ms 。 这样 3–7 ms 偏差 哪个部分由转换延迟引起?
    目前、PGA 设置配置为 1 ×tMOD 。 该设置是否会影响时序?

  2. 我还想澄清何时的确切条件 DRDY 变为低电平 。 虽然低电平持续时间通常是一致的、但我有时会观察到它保持的时间更长。 由于我要使用连续转换、因此我认为 DRDY 时序将严格由 SPS 设置确定、但看起来并不一致。 我测试了更改 PGA 延迟设置、但它不会影响该行为。 您能否解释一下为什么会发生这种情况?

             
  3. 正如我提到的、我会定期更新 INPMUX IDACMUX 直接连接寄存器 WREG 命令、然后使用读取数据 RDATA 。 但是、除非我添加 a 大约 100ms 更改多路复用器设置后、不会读取有效数据。 如果我将延迟降低到 50ms 、我仍然得到无效的结果。 我知道在切换多路复用器后应该需要一些延迟、但需要如此长的延迟似乎并不常见、因此我怀疑我做的事情可能不正确。

  4. 在图中、 较长的蓝色波形 显示了我设置的器件 INPMUX 和 IDACMUX 使用 WREG 逐个执行、而 左侧显示了上一周期的 RDATA 部分 。  


    实际上、将 INPMUX 和 IDACMUX 设置为 WREG 后、我会等待下一个 DRDY 变为低电平、然后再次变为高电平、此时我使用 RDATA 读取数据。  
    如果您知道此行为对应的状态、或者我可能缺少哪些状态、请告知您。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Joowhan Chae:

    一些关于您的问题的反馈

    我还想澄清何时的确切条件 DRDY 变为低电平 。 虽然低电平持续时间通常是一致的、但我有时会观察到它保持的时间更长。 由于我要使用连续转换、因此我认为 DRDY 时序将严格由 SPS 设置确定、但看起来并不一致。 我测试了更改 PGA 延迟设置、但它不会影响该行为。 您能否解释一下为什么会发生这种情况?

    请注意、 ADC 转换延迟时间从您读取数据和更改多路复用器后开始。 您应该在示波器上查看这一点、而不是仅查看 DRDY 之间的时间。 换句话说、测量最后一条命令结束(我假设这是 WREG 到 INPMUX)与 DRDY 从高电平到低电平的转换之间的值。 如果您的控制器在多路复用器切换和数据读取正在进行时执行其他任务、则转换之间的时间或 DRDY 长度可能是不确定的

    正如我提到的、我会定期更新 INPMUX IDACMUX 直接连接寄存器 WREG 命令、然后使用读取数据 RDATA 。 但是、除非我添加 a 大约 100ms 更改多路复用器设置后、不会读取有效数据。 如果我将延迟降低到 50ms 、我仍然得到无效的结果。 我知道在切换多路复用器后应该需要一些延迟、但需要如此长的延迟似乎并不常见、因此我怀疑自己的行为可能有误。

    您能解释一下“无有效数据“的含义吗?  数据与您预期的数据相比有多不准确? 如果您在切换 INPMUX + IDACMUX 寄存器后立即测量数据、您是否看到数据增加/减少、即稳定到最终值? 如果是这样、则表示存在可能由 IDAC 引脚上的电容导致的稳定问题。 请发布您的测量数据 — ADC 代码仅为十六进制 — 因此我们可以查看

    n 事实上、在使用 WREG 设置 INPMUX 和 IDACMUX 后、我会等待下一个 DRDY 变为低电平、然后再次变为高电平、此时我使用 RDATA 读取数据。  您能否告知您是否知道此行为对应的状态或我可能缺失的状态?

    固件应执行以下操作:

    • 执行初始化
    • 开始转换
    • 等待 DRDY 降至低电平
    • 时钟输出数据
    • 更改 INPMUX 设置(和/或 IDACMUX)
    • 等待 DRDY 降至低电平
    • 时钟输出数据
    • 更改 INPMUX 设置(和/或 IDACMUX)

    因此、在输出数据时钟之前、您无需等待 DRDY 恢复高电平。 相反、一旦 DRDY 从高电平转换为低电平、则发送 RDATA 命令并开始计时输出数据。

    -布莱恩

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

    无有效数据“是指 RDATA 命令返回的 3 个字节仅包含零

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

    尊敬的 Joowhan Chae:

    如果您尝试在 DRDY 下降至低电平之前和切换通道之后读取数据、则将从 ADC 获得全零。 如果在 DRDY 从高电平转换为低电平后始终读取数据、则不应看到此问题

    -布莱恩