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.

[参考译文] ADS1234:奇怪的上电行为、有时我会被相同的输出值卡住。

Guru**** 2387800 points
Other Parts Discussed in Thread: ADS1234, SN74LVC3G07
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/803576/ads1234-strange-power-up-behavior-i-get-sometimes-stuck-with-the-same-output-value

器件型号:ADS1234
主题中讨论的其他器件: SN74LVC3G07

我的问题是、有时在加电后(例如1/3)、我被几乎相同的输出值卡住(请查看下面的示例)。 但是、只有当电源同时上电时、才会发生这种情况。

我的 PCB 上还有一个保险丝、当我将其拆下并重新插入时、从未出现此错误。 对于 PDWN 引脚、我使用了 RC 电路、正如数据表中所示(R = 1k、C = 2.2nF)。 我也尝试了33k 的 R、但它没有改变任何东西。

我有时已经了解到、对 PDWN 进行脉冲可能会有所帮助、但我无法对其进行测试、这是 PCB 设计的原因。

通道1和通道2的原始输出值(十进制)示例:

通道1:8388608.0
通道2:8388608.0
通道1:8388608.0
通道2:8388616.0
通道1:8388616.0
通道2:8388610.0
通道1:8388616.0
通道2:8388624.0
通道1:8388623.0
通道2:8388611.0
通道1:8388616.0
通道2:8388615.0
通道1:8388612.0
通道2:8388615.0
通道1:8388612.0
通道2:8388615.0
通道1:8388615.0
通道2:8388735.0
通道1:8388639.0
通道2:8388671.0
通道1:8388624.0
通道2:8388640.0

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

    欢迎来到 E2E 论坛! 您可以将原理图发送给我吗? 通常、在冷启动时(系统已关闭一段时间)、在遵循当前数据表中的指南时不会出现启动问题。 但是、如果系统已通电且电源已关闭并重新打开、则可能会出现问题。

    当器件加电时、在 AVDD 和 DVDD 电源均达到标称工作电压后、PDWN 引脚必须保持低电平至少10us。 如果使用由 DVDD 供电的 RC、则必须确保在 PDWN 达到逻辑高电平状态之前 AVDD 已完全供电。 增大 R 或 C 值将有助于减缓 PDWN 变为高电平的时序、但这样做会有代价。

    为了使 ADS1234的内部上电复位电路正常工作、任何引脚上的所有残余电荷都必须在重新加电之前完全耗尽。 通过从开-关-开切换电源、必须有足够的时间让所有电容器泄漏电荷、从而使其放电、包括任何大容量电容器、旁路电容器、基准电容器和连接到 PDWN 引脚的电容器。 通过控制 PDWN 引脚并在启动后对引脚进行脉冲、可以避免该问题。 这些信息将被放置在我们希望很快发布的更新数据表中。

    其他注意事项是确保 ADS1234引脚处的基准电压正确。 您看到的结果代码是负满量程或非常接近负满量程。 您还应验证输入电压是否处于 ADC 输入端的正确共模电压。 如果您能够控制增益引脚、则可以尝试选择不同的增益、例如从128增益到1增益、再回到128增益。 加电后、您还应始终通过发送26个 SCLK 来启动偏移校准、从而发出偏移校准。

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

    尊敬的 Bob:

    我已经等待了足够长的时间、以便所有电容器都放电。 我在电路板上有一些有源耗电元件、这些耗电元件也应该对电容器放电。

    在我的情况下、无法在启动时进行偏移校准、因为我使用的是称重传感器、我无法确保称重传感器周围没有任何东西。

    我已附上 ADS1234的原理图。

    感谢您的回答、
    Rene

    e2e.ti.com/.../ADS1234_5F00_Schematics.pdf

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

    感谢大家分享原理图。 我所指的偏移校准是 ADS1234内部校准、用于消除 ADS1234内部不需要的偏移、例如 PGA。 这与称重传感器无关、因为校准会断开输入多路复用器、而是使器件内部的输入短路。 通过发送26个或更多 SCLK 来启动偏移校准。

    由于我没有完整的原理图、我假设根据 DRDY/DOUT 输出端的电阻分压器、您的微控制器的工作电压与 ADS1234的数字电源电压不同。 您为什么不对 ADS1234的微控制器和 DVDD 使用相同的电源电压? ADS1234模拟和数字电源可在不同的电压电平下工作、并且不必具有相同的电压。

    根据您的分压器、我将假定微处理器电源电压为3.3V。 如果是这种情况、您将在错误的电压下操作 SCLK 的输入电压。 如数据表第4页所示、ADS1234 VIH 必须至少为0.7 DVDD (5V DVDD 为3.5V)。 因此、我认为您很幸运、您从 ADS1234中获得了任何有意义的内容。 因此、您要么需要将 SCLK 信号电平转换为适当的电压、要么需要为 ADS1234的 DVDD 和微处理器使用相同的电源电压。

    有关原理图的另一个注释。 对于称重传感器的输入、您没有模拟输入滤波或 EMI/RFI 保护。 添加滤波器的一个优势是抗混叠。 未滤波的高频成分可能会混叠回到 ADC 的通带中。 我还建议在 ADS1234的 REF 输入端至少有一个100nF 电容。 我看到您有一个100nF 电容器作为 AVDD 的电源旁路电容器。 DVDD 电源输入也应使用旁路电容。

    另一个注意事项是、当使用与微处理器电源不同的 DVDD 电源时、您需要确保 ADS1234的数字输入引脚在加电时不会悬空。 此外、如果5V 电源断开、但微处理器仍然通电、则可能会将电流反向驱动到 ADS1234、这也可能会导致问题。 如果发生这种情况、GPIO 的电压不得大于0V (如果其中一个地址引脚为高电平、很可能会发生这种情况)。

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

    首先、感谢您的所有反馈。

    因此、如果偏移校准对重量偏移没有任何影响、我将在将来添加。

    我发现、在整个 PCB (包括 uC)的输入端添加延时继电器可以解决我的问题、但这不是我可以接受的解决方案。
    如果我必须无论如何更新 PCB、我将使用您建议的电容器和滤波器。 但是、您认为这将解决我的问题的变化有多大? 我还会添加(以防万一) FET 作为 ADS1234电源的主开关、如果有时间、我将尝试短接 FET 并对其进行测试、 或者、我应该使用最后一个备用 GPIO 来对 PDWN 引脚进行脉冲、而不是主电源开关。

    我对包括 uController 和 ADS1234在内的所有组件使用相同的 PSU、因此 DVDD 与 uController 使用相同的 PSU。

    也许我还会将 DVDD 更改为3.3V。 我首先在输入电压为3.3V 的 SCK 引脚试验电路板上测试它、它在那里工作正常、因此我假设与建议的0.2偏移也正常工作。 但我还使用了不同的 PSU、但具有相同的电压电平。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Rene:

    我仍然不清楚实际发生了什么。 "我发现在整个 PCB (包括 uC)的输入上添加延时继电器可以解决我的问题、这意味着什么。" 您指的是什么输入? 您将继电器放置在何处? 电路板的一部分是否已通电、然后继电器为电路的其余部分通电? 这可能意味着电源在加电时可能会略微下降、而不是 ADS1234单调加电。

    添加输入滤波器不会解决上电问题。 但是、如果您要更改 PCB 并且有额外的 GPIO、我强烈建议您更改 PDWN 引脚的控制、以便能够对该引脚进行脉冲、从而明确地正确复位器件。 这比控制电源开关更好。

    如果您为微控制器和 ADS1234使用相同的电源、为什么要在 DRDY/DOUT 引脚上使用分压器? 如果电源电压相同、则在使用分压器时 DRDY/DOUT 上的逻辑电平会出现问题。 如果您使用不同的电源电压、则在某些情况下、使用3.3V 逻辑输入/输出和5V DVDD 的 ADS1234可能适用于某些器件。 但是、不同的构建批次的器件可能无法以相同的方式响应。 我强烈建议对 DVDD 和微控制器使用相同的电压、或使用单栅极逻辑器件将 SCLK 电平转换为5V 电平。 我仍然不清楚您是如何为器件供电的。

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

    尊敬的 Bob:

    为了澄清这一点、我打算使用延时继电器将其置于 PCB 的电源输入端、这意味着 PCB 仅在 PSU 开启几秒钟后才会获得电压。

    因此、对所有设备进行供电会放电、然后当我打开5V PSU 时、几秒钟后、使用 ADS1234和 uController (这是一个生成自己的3.3V 电压的 Raspberry、 但我已经需要这种电源、因此我使用了5V 电压为 ADS1234供电。 我通过 GPIO 接头而不是 USB 为 RPi 供电)、然后 RPi 启动并运行。 但仅在 PSU 供电和系统启动(ADS1234和 RPi)之间存在延迟时才会这样做。 我希望明天能有一个示波器、以便在上电期间测量 PSU 的电压曲线。

    因此、我还认为、SCLK 引脚的电压升高比使用3.3V 为 ADS1234供电更好。

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

    听起来您的 PSU 噪声很大、或者在加电时不稳定。 当 PSU 启动时、我们会听到示波器显示什么、这一点很有意思。 在 PSU 稳定后、电源看起来足够干净、可以为 PCB 正确供电。 由于存在电缆电感和电容、因此从 PSU 到 PCB 的布线也可能是问题的一部分。

    通过对 PDWN 引脚进行脉冲、控制 PDWN 引脚应允许 ADS1234在通电后正确复位。

    如果微控制器为3.3V、ADS1234为5V、则仅需简单的电平转换器、不需要双向转换器。 一种方法是使用 SN74LVC3G07、这是一种开漏缓冲器。 在移除分压器时、您可以为 SCLK 使用一个栅极、为 PDWN 使用一个栅极、为 DRDY/DOUT 使用最后一个栅极。 这将要求栅极由3.3V 电压供电、但使用上拉电阻器将输出电压变为5V。 您可以直接使用 DRDY/DOUT 的5V 输出、而不是电阻分压器、因为该器件在输入端可耐受5V 电压。 然而、由于器件是开漏、缓冲器输出上需要上拉电阻器。

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

    尊敬的 Bob:

    此处的附件是 PSU 的通电曲线、需要大约6ms 才能达到最终的5V 电压。

       

    因此、几秒钟后将 PDWN 引脚切换为高电平(uController 已启动)应该可以正常工作。

    还感谢有关电平转换器选择的建议。

    此致、

    Rene