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:DRDY 和 DOUT/DRDY 未变为低电平

Guru**** 2551110 points
Other Parts Discussed in Thread: ADS124S08, ADS1256

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1183424/ads124s08-drdy-and-dout-drdy-not-going-low

器件型号:ADS124S08
主题中讨论的其他器件: ADS1256

您好!

我正在使用 Verilog 对 ADS124S08 ADC 进行编程和读取。 它配置为 STATUS = 8'h00、 PGA=  8'hEF、 DRATE= 8'h5B、 REF= 8'h10、MUX = 8'h01、 SCLK = 1MHz、CLK = 4MHz。 我的编程方式是:

上电后:

 CS 和启动/同步驱动为低电平、等待2个 CLK

2. 复位 ADC 并等待4096 CLK

3.设置状态并等待1个 CLK

4. 设置 PGA 并等待1个 CLK

5. 设置 DRATE 并等待1个 CLK

6. 设置 REF 并等待1个 CLK

7. 设置 多路复用 器并等待1个 CLK

8.发送 START 命令(有时我也将 START/SYNC 连接至高电平、并且未使用任何命令)并等待4个 CLK

9.自校准(仅限第一次)

10.等待 DRDY 变为低电平

11.通过发送24个 SCLK 来读取数据(直接读取。 即使我尝试使用读取命令也是如此)

12.重复7、10和11。

这样、我就没有发现 DRDY 变为低电平。 我卡在第10步。 我正在正确执行该操作、或者我是否缺少任何步骤?

谢谢

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

    您好 Prakash B B、

    当您为 ADC 加电、然后将 START 引脚置为高电平时、您应该会看到 DRDY 以大约与默认数据速率(即20SPS 或~50ms)相反的频率脉冲。 这种情况无需写入任何寄存器、将 CS 置为高电平/低电平等 因此、这是一个确保 ADC 正常工作的简单测试。 如果不发生这种情况、则很可能是电源或时钟出现问题

    我还建议您读回您发送的寄存器数据、以确保 ADC 正确接收到该数据

    布莱恩

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

    您好、Bryan、

    你过得怎么样? 祝您新年快乐——2023年。

    我是通过在上电后将 START 引脚拉为高电平来实现的。 DRDY 无疑会发出脉冲、但速率不是20SPS。 它偶尔出现在 CRO 上。 无法捕获其周期。

    另一个有趣的事情是、当我跳过复位和自校准步骤时、DRDY 会针对我之前提到的设置以1.5kHz 的频率进行脉冲。 您会告诉我这是怎么可能的? 为什么它在加电后不以默认速率进行脉冲?

    谢谢

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

    您好 Prakash B B、

    我做得很好、谢谢您的提问。 祝您新年快乐!

    如果您为 ADC 加电、然后将 START 拉至高电平、而不执行任何其他操作、您应该会看到在 ADS124S08上以默认数据速率进行 DRDY 切换。 如果您看不到 DRDY 切换、或它不一致切换、则必须存在电源问题、时钟问题或器件已因某种原因损坏。 您的控制器也可能尝试驱动 DRDY 引脚、从而导致争用问题。 假设器件未损坏:

    您是否已检查以确保电源稳定且不会下降?

    如果您使用的是外部时钟、这是馈送到 ADC 的干净信号吗? 如果您使用内部时钟、CLK 引脚是否接地?

    您可以尝试使用外部电源并断开 DRDY 引脚与控制器的连接、以确保这些连接不会出现问题。

    布莱恩

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

    您好、Bryan、

    感谢你的祝愿。

    我检查了电源、发现它稳定。

    时钟来自外部晶体。 看起来很干净。

    连接外部电源以检查 DRDY 引脚行为有点困难。 让我看看可能的方法。

    对寄存器进行编程后、为什么 DRDY 会以固定间隔而不是以前的间隔开始脉冲?

    另一个问题:

    每次在连续模式下在差分输入之间切换时、是否需要对多路复用器模式的寄存器、启动和停止命令进行编程?

    谢谢

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

    您好 Prakash B B、

    您使用的时钟的器件型号是多少?

    您能否尝试将 CLK 引脚接地以便 ADC 使用内部振荡器? 并尝试使用外部电源? 这是最简单的配置、应允许您看到 DRDY 以默认数据速率切换(在确保 START 被拉至高电平之后)。 同样、您不应发送任何命令或切换任何其他引脚以使其正常工作(当然、除了保持 RESET 高电平)

    [引用 userid="540461" URL"~/support/data-converters-group/data-converters/f/data-converters-forum/1183424/ads124s08-drdy-and-dout-drdy-not-going-low/4460400 #4460400"]编程寄存器后、为什么 DRDY 会以固定间隔但不是以前的间隔开始脉冲?

    我不知道该怎么做。 根据您的寄存器设置、您要将数据速率寄存 器中的 DR 位设置为8'HB、该位应选择1kSPS 数据速率。 但是、您说测量数据速率时实际为1.5kSPS、这是不可能的。 即使以4.5MHz 的最大 CLK 频率运行 ADC、输出数据速率也只会增加到~1.1kSPS。 我认为这只是不稳定的行为、因为 系统的其他地方存在问题

    [引用 userid="540461" URL"~/support/data-converters-group/data-converters/f/data-converters-forum/1183424/ads124s08-drdy-and-dout-drdy-not-going-low/4460400 #4460400"]每当我在连续模式下切换差分输入时,是否需要对多路复用器模式的寄存器、启动和停止命令进行编程?

    不需要、每次都不需要发送 START 和 STOP 命令。 写入 INPMUX 寄存器会自动重新启动转换过程。 有关哪个寄存器写入会导致转换过程重新启动的更多信息、请参阅 WREG 部分(9.5.3.12)

    布莱恩

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

    H Bryan、

    我尝试将 ADC CLK 引脚接地以使用内部振荡器。 当我拉高启动时、DRDY 以默认速率(20SPS、50ms)进行脉冲。 我觉得还有其他的原因。 进行检查。

    此致

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

    您好 Prakash B B、

    感谢您提供更多信息。 您的时钟电路似乎存在问题。 您可能希望使用内部振荡器检查系统的其余部分、以便您知道它的行为符合需要。 然后、您可以尝试诊断计时问题。

    或者、为什么不只使用 ADS124S08上的内部振荡器?

    布莱恩

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

    您好、Bryan、

    我不想错过任何数据。 我使用的是外部时钟。 此外、状态转换发生在 w.r.t。该时钟可帮助我跟踪它。

    是否认为多路复用时通道之间会有交叉? 如何解决此问题?

    AIN0和 AIN1差分工作以及 AIN2和 AIN3是否可能不工作?

    此致

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

    我提出的原因是:

    第一个图像无噪声位是(13至14)、其中其他2个图像不是。

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

    您好 Prakash B B、

    [引用 userid="540461" URL"~/support/data-converters-group/data-converters/f/data-converters-forum/1183424/ads124s08-drdy-and-dout-drdy-not-going-low/4467072 #4467072">我不想错过任何数据。 我使用的是外部时钟。 此外、状态转换发生在 w.r.t 上。该时钟有助于我跟踪它。

    为什么您会使用内部时钟错过数据? 数据输出由 SCLK 触发和控制、SCLK 与 ADC 使用的内部时钟频率无关。 也许会对该 ADC 的工作方式产生误解

    关于您的其他问题:我认为  、除非超出了绝对最大额定值、否则 AIN0和 AIN1不工作、AIN2和 AIN3不工作。 您所描述的内容听起来像是稳定问题、而不是串扰。 换言之、ADC 的输入信号在采样时不会稳定、因此会产生"噪声"信号。 您可以尝试降低输出数据速率、以查看情况是否有所改善。 您还可以尝试增大可编程延迟(PGA 寄存器0x03中的延迟位)。 此特性会延迟转换启动、从而使任何外部模拟电路能够稳定。 这通常是由抗混叠滤波器组件(电阻器和电容器)引起的、或者如果您的应用中有一些开关偏置功能、例如从一个传感器切换到另一个传感器的电流或电压激励

    布莱恩

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

    您好、Bryan、

    否 我知道数据输出是由 SCLK 触发和控制的。 目的还在于、如果我愿意、我也可以更改 ADC 频率。

    共享的快照用于短接输入。 当我配置为差分 AIN0和 AIN1并且输入短接时、我发现13/14个无噪声位(NFB)。 但是、当针对 AIN2和 AIN3重复此操作时、我无法执行此操作。 此外、当针对 AIN4和 ANI5重复此操作时、我也无法执行此操作。

    我尝试延迟以及更改 DRATE、但第二和第三个差分输入没有变化。

    此外、我观察到 DRDY 引脚在 SCLK 的第一个下降沿变为高电平、而不是 SCLK 的上升沿、如下所示:

    您认为原因是什么?

    多路复用或 AIN2和 AIN3差分输入时是否需要注意事项?

    此致

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

    您好 Prakash B B、

    因此、您在需要调整输出数据速率时使用外部时钟? ADS124S08已提供14种不同的输出数据速率、这还不够? 我只是问、因为使用外部时钟似乎会在您的系统中造成重大问题、我看不到使用外部时钟有什么真正的好处。 您可能需要在系统中重新考虑此功能

    关于噪声:我不确定我是否理解您昨天发布的三幅图片中显示的内容。 您说的第一幅图像显示无噪声位为13-14、而其他两幅图像则不是。 您如何得出此结论? 看到数据中的位23:11没有改变? 或者您正在计算它吗? 我问的是、其他两个图像看起来也像相同的位数没有变化、所以我不理解您是如何得出一个正在工作、而另外 两个不是这样的结论的

    ADS124S08数据表中的第8节介绍了如何进行噪声测量。 我会对您的系统执行相同的测试、以便您可以在相同的条件下测量噪声。 然后计算 RMS 噪声(无效分辨率或无噪声位)、并将您的结果与数据表中显示的结果进行比较。 我不确定您现在使用的方法是否非常有用。

    布莱恩

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

    您好、Bryan、

    不完全是。 是的、如果需要的话。 但主要我可以保持与 SCLK 的相位关系、这有助于我解决时序问题。 DRATE 是足够的、毫无疑问。 我不认为外部时钟会导致任何问题。 我在 ADS1256中使用了外部时钟、发现工作正常。 正如我说过的、SCLK 相关的时序问题更好。

    是的。 我看到的位23:11表示 NFB、而不是任何计算。 在其他两个图像中、即使在 位23:11之间 也会切换、这表示存在串扰和其他内容。 需要检查一下。

    我参考了第8节检查 ENOB 和 NFB、但未检查计算结果。 我观察的方式应该与这些位的 Table 值相匹配。 它也映射了。

    我昨天尝试了登录、但无法登录。 不知道原因。

    此致

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

    您好 Prakash B B、

    图像中的数据显示、信号从较小的正电压摆动到较小的负电压。 考虑到输入信号非常小(~0V)且增益非常高(128、至少根据您在原始帖子中提供的设置)、这可能是有保证的。

    我将按照第8节中的说明进行噪声测量、然后实际获取数据并执行计算(标准偏差等)。 我还会绘制数据、以查看它在时域中的样子。 如果它看起来是高斯分布、那么您将得到您所期望的结果。 如果它不是高斯噪声源、那么您有一些与 ADC 相互作用的外部噪声源。 对于 ADS1256、它是时钟电路、因此这是我开始进行故障排除的地方、尤其是因为您已经遇到了该电路中的时钟问题

    布莱恩

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

    您好、Bryan、

    当我说 NFB 时、相应的位数不应针对短路输入或在未改变的情况下连接负载而进行切换。 我是对的吗? 如果是这样、那么我计算 NFB 的方法就足够了。 对吧?

    我使用了频率为4.0886MHz 的外部时钟(来自 FPGA)。 当我以差分方式对所有输入进行多路复用并将其短接 (AIN2和 AIN3除外、其中我连接了称重传感器)时、得到的结果如下所示:(SPS = 800、DELAY = 24、使用 START 和 STOP 命令)

    现在、DRDY 以~655Hz 的频率进行脉冲。 该速率是否正确?

    使用带有外部时钟的 START 和 STOP 命令解决了我认为的问题。 当使用这些命令和内部时钟时、仍然存在问题。 我不明白原因。 它可以是 SCLK 相位。 你也是这么认为还是其他的东西?

    谢谢

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

    您好 Prakash B B、

    我不确定"delay = 24"的含义、因为这不是 PGA 寄存器延迟位中的有效寄存器设置。 但请注意、可编程延迟仅在将 START 置为高电平或发送 START 命令后发生一次。 如果您正在持续采样、例如发送 START 命令而没有 STOP 命令、则应在大约1/ODR 或1/800 = 1.25ms 的情况下获取数据。 这对于所有转换都是如此、但对于第一个转换、必须考虑滤波器设置和延迟时间。

    使用带有内部与外部时钟的 START/STOP 命令时、不会出现任何问题。 我不确定是什么原因导致了此问题、可能有许多不同的因素(噪声问题、布局问题、固件错误、通信问题等)。 如果您想解决此问题、您可以从在写入和读取 ADC 时查看所有信号的通信时序开始

    布莱恩

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

    您好、Bryan、

    延迟与 PGA 设置中的延迟位相关。 它被设置为25*tmod (而不是24)。 但是、当我使用 START 和 STOP 命令时、速率会降低、对吧?

    我也不知道这个问题。 检查时序以进行读取/写入、时序与数据表一致。 需要知道其他原因。

    此致

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

    您好 Prakash B B、

    如果您在800SPS 数据速率下使用低延迟滤波器、则第一次转换需要360 tMOD 周期(请参阅表13)。 然后为可编程延迟再添加25个 tMOD 周期、总共为385个 tMOD 周期。 对于 ADS124S08、tMOD = 16/fCLK、在本例中为16/4.0886MHz = 3.91us。 然后、385tMOD * 3.91us = 1506us、这是664Hz 的等效采样率。 因此、如果您每次都要启动新的转换、那么您有正确的数据速率。

    布莱恩

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

    您好、Bryan、

    感谢您提供相关信息。

    我找不到任何与时间相关的问题。 需要知道问题的根源。

    只是想知道这是否是有关电流激励的正确平台:

    例如、如果我使用 AIN0和 AIN1作为差分输入、并且连接到称重传感器、那么在用作输入时、我是否可以通过相同的输入线路将励磁电流发送到传感器(称重传感器)作为励磁源? 这意味着负载单元是否可以从这些输入接收励磁?

    此致

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

    您好 Prakash B B、

    看到您尝试做什么总是很有帮助、而不是用文字解释它。

    您能否快速了解一下您希望对称重传感器和激励电流执行什么操作、以便我了解您希望如何设置电路? 这样 可以更容易地告诉您您所做的是不是正确的

    布莱恩

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

    您好、Bryan、

    对我来说、很难在图片中再现、因为我不参与其中。 我是 FPGA 的家伙。 但有一个想法。 它是:

    由于我们为称重传感器使用4条 I/O 线路、因此在差分配置中为 ADC 提供的差分信号使用2条 I/O 线路、而其他2条用于对负载进行激励。 该激励基于电压。 当 ADC 为励磁提供高达3mA 的电流时、是否可以使用该电流将电压转换为基于电流的励磁?

    如果是、我能否使用连接到 ADC 差分通道输入的相同线路?

    希望我现在清楚了。

    此致

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

    您好 Prakash B B、

    如果有其他人在硬件设计上工作、您是否应该询问这些问题? 到目前为止提出的大多数问题都与硬件有关,因此与负责这些决定的人交谈是有道理的。

    通常、输入通道具有抗混叠滤波器、该滤波器由一个电阻器和一个电容器组成。 由于该电阻器在传感器和 ADC 之间串联、因此将电流从正在测量的同一引脚向外推也会将电流通过滤波器电阻器、从而导致较大的压降。 该压降将由 ADC 作为称重传感器输出的一部分进行测量、从而导致较大误差。 因此、我不建议使用相同的模拟输入来测量称重传感器和 IDAC 输出

    如果我所描述的不是您设计电路的目的、请给我发送一张图片(或让其他人这样做)

    布莱恩

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

    您好、Bryan、

    我将检查这个并返回。 由于这是我减少引脚数量的想法、我需要与硬件人员交谈。 如果有任何问题、我会通知您。

    这些信息应该足以满足我的意图。 让我重新思考一下同样的问题。

    我将与相关人员一起查看图片。

    此致

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

    您好 Prakash B B、

    已理解、如果您有其他问题、请告知我们。 如果它们与此主题不相关、请启动新主题、我们将为您提供支持

    布莱恩

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

    您好、Bryan、

    感谢您的支持。 如果有的话、我一定会给你 Ping。

    此致