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:数据速率

Guru**** 2540720 points
Other Parts Discussed in Thread: ADS1262

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/607347/ads1262-data-rate

器件型号:ADS1262

大家好、

我正在使用 ADS1262测试新设计、无法使其以快速采样率运行。

运行方案:

1.通过 SPI 为 ADC 进行设置。 在开始时读取该值、然后重新配置并将数据写回 ADS1262。 再次读取以确保寄存器设置正确。 下面列出了设置详细信息。

2.在 MCU 上启用计时器中断、目标为20kHz (器件规格表明可以实现大于38kHz 的频率)

3.在定时器中断时、上拉 START 引脚以触发转换

4.#DRDY 引脚连接到 MCU 上的中断引脚。 当#DRDY 触发时、MCU 中断立即读取 ADS1262、并将 START 引脚拉至低电平。 该序列重复计时器中断和#DRDY 中断。

问题:

从 START 信号开始、#DRDY 变为低电平的时间大约为208us。 根据数据表、这太慢、不正确。 请参阅附加照片

以下是我尝试的设置:

CONFIG->internal_ref_en = 1;//启用内部基准
CONFIG->CRC_EN = 1;        //启用 CRC 字节
CONFIG->STATUS_EN = 1;     //启用状态字节
CONFIG->CHOP = 0;         //禁用斩波
config->delay_idx =(((uint8_T) 0U);  //无延迟-默认值
CONFIG->PULSE_MODE_EN =(((uint8_T) 1U); //启用脉冲模式转换
config->filter_idx =(((uint8_T) 0U);        //滤波器选择设置为0:sinc1滤波器
CONFIG->PGA_BYPASS =(((uint8_T) 0U);    //启用 PGA
CONFIG->PGA_GAIN =(((uint8_T) 5U));       // PGA 增益设置为0x5 (0101b):32V/V 增益
config->dataarate_idx =(((uint8_T) 15U);  // DR 设置 t0 0xF: 38400 SPS
config->neg_input_mux =(((uint8_T) 2U); //负输入:AIN2
CONFIG->pos_input_mux =(((uint8_T) 0U)); //正输入:AIN0
CONFIG->neg_ref_mux =(((uint8_T) 3U);   //负基准输入:AIN5
CONFIG->pos_ref_mux =(((uint8_T) 3U);   //正基准输入:AIN4

所有其他值都保留为默认值。

我不知道我做了什么错了。 我们非常感谢您的任何帮助。

非常感谢、

Phil

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

    您好、Phil、

    这是一个具有低延迟数字滤波器的 Δ-Σ ADC。 尽管延迟很低、但在启动转换和/DRDY 变为低电平时仍然存在一些延迟。 在38.4kSPS 的情况下、数字滤波器是一个 SINC5滤波器、它需要大约5个转换周期才能获得第一个转换结果(考虑一个平均5个结果的移动平均滤波器)。 这称为转换延迟、如表17中针对每个数据速率和滤波器类型给出的那样:

    您正在精确测量38.4kSPS、SINC5滤波器转换延迟。 请注意、延迟仅适用于第一个转换结果、每个连续转换结果将以数据速率周期的固定间隔出现。 对于只需要大约1个转换周期才能稳定的转换延迟、您需要在其中一个支持的数据日期使用 SINC1或 FIR 滤波器。

    要了解有关这些滤波器及其相关延迟的更多信息、请参阅以下应用手册:

    此致、
    Chris

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

    尊敬的 Chris:

    非常感谢您的回答。

    在您的回答中、您提到了:

    [引用用户="Christopher Hall"]

     请注意、延迟仅适用于第一个转换结果、每个连续转换结果将以数据速率周期的固定间隔出现。 对于只需要大约1个转换周期才能稳定的转换延迟、您需要在其中一个支持的数据日期使用 SINC1或 FIR 滤波器。

    [/报价]

    我的问题是如何获得连续转换结果? 我建议将第二级滤波器设置为 SINC1、但转换延迟似乎在208us 时保持一致。 请参见下面的照片。

    此致、

    Phil

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

    您可以将 START 引脚保持为高电平、而不是在每次转换时切换 START 引脚、您将看到/DRDY 开始在数据速率周期切换。

    每次您停止并启动转换时、数字滤波器将被复位、/DRDY 将被转换延迟。 请注意、写入某些器件寄存器(例如输入多路复用器)也会导致转换重新启动、并且也需要此延迟。

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

    非常感谢、Chris。

    我在您的回答之前就知道了这一点、感谢您的确认。

    我需要补充的是、必须将器件配置为在连续模式下运行(寄存器#03中的 RUNDDE 位设置为0)。

    我的结论是要实现高数据速率、器件必须以连续模式运行、否则最大转换速率受第一个转换延迟的限制。 是这样吗?

    此致、

    Phil

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

    正确! 是的、需要将器件运行模式设置为连续转换模式。

    如果您有任何其他问题、请告诉我、我可以为您提供帮助!

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

    尊敬的 Chris:

    非常感谢您的支持。

    我可以有另一个问题吗? 如何才能巧妙地获得转换结果? 目前、我具有以下单端配置:

    VDD = VADD = 5V

    VSS = AVSS = 0V

    AIN-P = IN0 =信号输入

    AIN-N = IN2 = 0V

    PGA 增益被禁用。 配置遵循数据表中的"注意事项"建议

    输入信号从0变为5V、但读数始终为我提供0xFFFFFF7F

    非常感谢

    Phil

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

    您好、Phil、

    作为完整性检查、ADS1262数据首先从 MSB 计时、因此我希望您读取的数据更有可能为0x7FFFFFFF (+2、147、483、647或正满量程)、是情况还是您真正获得了0xFFFFFF7F (-129或接近0V)?

    您使用什么作为基准电压?
    如果基准被禁用或配置不正确、您可能会获得满量程读数。

    我可能还建议读回 INPMUX 寄存器、以仔细检查您是否选择了正确的输入(并确保 SPI 通信按预期工作)。 此外、您可能会尝试启用带有数据的状态字节、以查看是否收到任何错误标志。

    请注意:状态字节可能仍指示存在 PGA 错误标志、但禁用 PGA 后、您可以测量0至5V 之间的电压。

    此致、
    Chris

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家现在都在工作、非常感谢、Chris。
    问题是由于参考线、我启用了内部基准(用于测试)、但忘记正确选择内部基准源。
    此致、
    Phil
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Phil、

    您的欢迎、我很高兴您能够解决此问题!

    此致、
    Chris