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.

[参考译文] ADS1262:SPI 读取问题

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/853068/ads1262-spi-read-problem

器件型号:ADS1262
主题中讨论的其他器件: ADS1256ADS124S08

你好。 我使用 ads1262在双极模式下测量+-2伏、CS 和 START (对于启动转换、请使用 Start1命令)始终连接 GND、DRDY 和 MCU 接口。 ADC 时钟模式外部晶振7.3728MHz。  SPI 隔离 adum1402A。配置 SPI -时钟750kB/s (PCLK2 24MHz、SPI 预分频器32)、CPOL 0 CPHA 1、MSB 优先。 MCU stm32f100c8t。 我无法读取或写入配置寄存器。 读取转换结果 尚未尝试。  几乎没有对命令或错误数据的响应、有时数据是正确的。 如何解决此问题?

SPI 信号清理、22 Ω 抗振铃电阻器、PCB 轨道短路。  

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

    您好、Boris、

    您是否使用24MHz SCLK 进行 SPI 通信?
    ADS1262可采用高达8MHz 的 SCLK。 尝试较慢的 SCLK 频率、看看这是否有助于解决问题。

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

    24MHz 外设时钟。 在预分频器之后、SPI 的频率为750kHz。 我尝试将频率从93kHz 设置为1.5MHz、但没有结果。

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

    您好、Boris、

    好的、这应该是好的。

    当您查看 SPI 信号时、它们在隔离器两侧是否看起来很干净?

    另一个需要检查的问题是、确保在加电后不会太快地与 ADS1262通信。 器件上电后有一段时间、器件内部保持在复位状态。 通常、我等待的时间比这个周期长、并使用第一个/DRDY 下降沿指示器件正在进行通信并已准备好进行通信。 您是否看到从器件输出了一致的/DRDY 周期?  

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

    ads1262引脚的信号。 /DRDY 始终处于高电平、因为/START 始终连接到 GND。 我想使用命令 Start1启动转换。 该文档指出、通电后、开始时间为2^16 ~9ms。 即使在1分钟也没有结果。

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

    您好、Boris、

    好的、您是否看到/DRDY 在发出 Start1命令后变为低电平?
    如果没有、则说明命令未正确解释、nPWDN/nRESET 引脚处于低电平且器件处于断电模式、或者 ADS1262可能没有有效的主时钟信号。

    您是否已检查 nRESET/nPWDN 引脚的状态?

    此外、ADS1262是如何作为时钟的;您使用的是外部时钟/振荡器还是内部振荡器?

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

    与任何其他命令一样,Start1命令并不总是成功。 但是、如果通过、则脉冲出现在引脚/DRDY 上。 尝试读取配置时、数据无效。

    nRESET/nPWDN 通过10k 连接至 DVDD (3.3伏)、而非低电平。

    时钟 ADS1262外部晶振7.3728MHz。 纯正弦波信号。

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

    您好、Boris、

    听起来器件是计时和激活的、因此目前我猜是 SPI 通信上肯定存在某种计时问题。

    在 这些被忽略的命令或命令中、您是否能够捕获并共享 SPI 信号(在 ADC 侧)的示波器屏幕截图、这些命令或命令会导致 ADC 的无效响应? 我可以查看图片、看看我是否可以发现任何潜在的时序问题。

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

    我发现了一个问题。 ADC 和微控制器的电源采用电流隔离。 如果您首先将电源连接到 ADC、然后再连接到微控制器、则会出现此问题。 ADC 会冻结、然后当您尝试发送命令或数据时、它会随机关闭。 当您尝试在 nRESET/nPWDN 上检查电平(在您的请求之后)时、ADC 会立即启动、因此、在我看来、它始终处于开启状态。 之后、如果不关闭或打开微控制器、ADC 工作正常。 由于数字隔离器配置为2/2、因此问题出在 SCLK 或 MOSI。 引脚11和12上的高电平或短时间内的噪声会导致 ADC 冻结或故障?

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

    您好、Boris、

    非常好、我很高兴听到您能够确定问题的原因!

    在我看来、当 MCU 未驱动该信号时、ADC 可能会看到一些额外的 SCLK 边沿。 在这种情况下、ADC 可能在 MCU 之前有几个 SCLK、从而导致 MCU 命令被误解。

    为 MCU 供电后、您可以将 SCLK 引脚配置为 GPIO 引脚、并将其从低电平状态转换为高电平状态、并将其保持高电平大约10ms。 在第一个 SCLK 上升沿之后、如果 ADS1262在65536 fCLK 周期内没有看到另一个 SCLK、那么串行接口被复位并可被重新同步至 MCU 的串行时钟。 有关此行为的更多详细信息、请参阅 ADS1262数据表的第9.4.4.4节(第66页)。

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

    再考虑一下… 通过确保在 MCU 通电之前不启用数字隔离器(如某些隔离器允许的那样)、您可以防止 SCLK 或 MOSI 信号在 MCU 通电后切换并启用隔离器。

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

    非常感谢您建议您更详细地查看 nRESET/nPWDN。 是的,隔离器有一个上电引脚,我将其连接到 GPIO MCU。 99%的正确、同步失败。 我可以提出最后一个问题吗? 需要连接外部双极参考来测量双极信号? 还是可以使用单极基准来实现它?

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

    您好、Boris、

    当然、请根据需要随时提出任何后续问题!

    关于基准电压、许多人根本不使用外部基准电压。 借助2.5V 内部基准、您可以测量高达+/- 2.5V 的差分信号(假设 PGA 增益为1V/V)。

    但是、如果您决定使用外部基准电压、它可以是单极或双极、但必须满足以下要求:

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

    你(们)好

    不会使用内置基准源、为了实现长期稳定性、它不适合、而是会有 lm399。
    ADC 工作正常。 μV 的总噪声为 buffer->ADC driver->ADC -~ 1.5 μ V。 如果没有屏蔽、则为5 SPS fir、所有运算放大器都为 ad8628。 您能否推荐有关非线性补偿的文章或应用手册? 我希望从~10ppm 降低到~1ppm。

    此外。 这不是一个问题,而只是一个观察。 问题已解决。 如果 SCLK 上的高电平持续时间超过1分钟、使用下一条任意命令、ADC 可进入模式- PWDN。

    感谢 您的帮助、Christopher。

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

    您好、Boris、

    遗憾的是、我没有任何应用手册可以用来描述如何执行非线性补偿。 我认为非线性补偿看起来与执行多个增益校准非常相似、主要区别在于输入电压在 ADC 的输入范围内扫描。 我没有听说过很多人尝试执行此级别的精度校准...

    通常、我发现系统中的初始偏移和增益误差是最大的误差源。 使用0V 输入和 FS 输入进行校准以补偿这些误差;但是、找到精度高于 ADC 指定增益误差的输入电压源至关重要、否则增益误差校准可能导致误差变差! 因此、并非每个人都能对增益误差进行补偿。

    下一个最大的 ADC 误差通常是温漂和增益误差漂移。 校准这些误差可能会非常耗时、因为您需要在整个温度范围内执行多次校准、以补偿不断变化的偏移和增益误差。 测试的温度越高、系统的精度就越高。 或者、您可以尝试调节系统的环境温度以减少与温度相关的影响、但这可能体积庞大且实施起来成本高昂。

    最后、只有在偏移和增益误差被消除并且它们的温度依赖性也被消除后、INL 误差通常才会开始成为系统中的一个重要误差源。

    我的观点是、除非您已经解决并补偿了系统中的较大误差源(偏移漂移和增益误差漂移)、否则尝试测量和补偿 INL 误差可能没有太大的好处。

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

    感谢您的回答。 可提供所需精度水平的测量设备和参考源。 失调漂移和增益误差漂移(使用外部 PGA、绕过内部 ADC PGA)不会出现问题、已解决。 剩下的就是非线性问题。 遗憾的是、有关信息很少。 诸如表格法、平方函数等基本解决方案是众所周知的、但到目前为止经验不多。 线性度的降低是可能的、即使我知道使用它的器件(基于 ads1256而不是公共器件)、但使用哪种方法或实现仍然是秘密的。

    嗯... 我将阅读、学习和尝试)再次感谢您的帮助。

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

    如果绕过 PGA、电压偏移将是多少? 测量时、输出电压约为300uV。

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

    您好、Boris、

    我没有任何数据可供确定、但我想它不应比 PGA 增益为1V/V 时的数据表规格差

    向模拟信号链添加额外电路通常会增加总失调电压、因此我猜测串联移除电路会降低总失调电压。 ADS124S08数据表是唯一一款具有额定 PGA 旁路偏移的 Δ-Σ ADC、其值与在1V/V 增益下使用 PGA 的值完全相同、我认为这与我最初的猜测一致、即旁路 PGA 不会降低偏移。

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

    我想将您的体验与我的测量结果进行比较。 一切都是一致的。

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

    大家好、Christopher!

    是否有任何有关内部基准 ads1262噪声的数据? 或间接地显示在噪声表(表1第26页)上。 ADC1噪声)?  暂时来说、我正在使用它。

    在2.5SPS 时,增益为1v/v 的 Sinc4滤波器最简单的20次测量平均值计算得出的“平均”噪声为+-150nV 峰间值。 我正在尝试查找并删除产生噪音的人。

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

    您好、Boris、

    我们在一个器件上测量了 ADS1262内部基准的噪声频谱密度、结果如下:

    通过将输入短接至 ADC 来采集表1数据、因此可以有效地从这些测量中消除基准噪声。

    我写了一篇关于这个主题的博客文章、描述了如何通过输入信号的振幅来调制基准噪声: https://e2e.ti.com/blogs_/archives/b/precisionhub/archive/2015/12/11/the-impact-of-voltage-reference-noise-on-delta-sigma-adc-resolution

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

    有趣。 此图片来自您的测量结果、或者是否有可用于此类测量的文档? 对于 PGA、输入二极管等的电流噪声

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

    您好、Boris、

    是的、这是我在工作台上进行的测量。 遗憾的是、我没有任何其他可供您参考的文档。

    对于 PGA、输入二极管电流噪声等方面、没有一种很好的方法可以分别去耦和测量这些可能的噪声源、 因此、您实际上可以做的最好的事情是查看表1中所有这些源的组合噪声性能、并尝试复制它...

    您是否曾尝试短接 ADS1262的输入、测量噪声性能、然后将结果与表1进行比较? 完成后、请尝试短接外部放大器/信号调节的输入、并查看噪声是否降低。 这通常是我尝试定位主要噪声影响因素的方法。

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

    我将准备测量数据并进行比较。 对于外部内部基准源(例如、Ltc6655、作为最低噪声之一)、ADC 输入短路时、模拟电源的噪声不超过0.8mV。

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

    内部基准源的噪声如文档中指定的那样。 当连接一个外部基准源(输出+-2.5伏)时、会出现一个问题。 ADC 双极电源电压 AVDD +2.5伏、avss -2.5伏。 将外部基准源连接到端子 AIN5 -2.5伏、AIN4 +2.5伏。 PGA 禁用。 基准源 LTC6655-2.5、OPA177上的反相缓冲器。 当由一个内部基准源、LSB ~ 1.164nV (5 (FSR)/ 2 ^ 32)运行时、一个外部基准源的 LSB 为~ 2.382nV。 就像它变为 FSR = 10伏或 LSB = FSR / 2 ^ 31一样。 为什么是这样? 该文档指出、考虑了绝对值 FSR =+ REF -(-REF)。

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

    最后一个问题无效、请忽略它。 抱歉。)