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.

[参考译文] ADS1298:在高速数据采样率中,需要的模拟信号稳定时间和SPI时钟速度。

Guru**** 2603705 points
Other Parts Discussed in Thread: ADS1298

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/665240/ads1298-in-high-speed-data-sampling-rate-what-is-required-analog-signal-stabilization-time-and-spi-clock-speed

部件号:ADS1298

您好,

我目前使用的是ADS1298,在高速采样率中使用它时遇到了问题。

我目前正在转换模拟信号,与常规使用略有不同。

为了降低功耗,我尝试只在进行转换时才发出模拟信号(因为我的系统需要使用高电流LED来获取模拟信号,所以需要大量电流)

在确定转换所用的时间后,取决于数据采样率(例如,在250 SPS模式下,它需要4毫秒)

我已将SPS模式更改为8K模式,尽管我不需要这么快的速度(大约100 SPS足以支持我的系统)。

我试图忽略80个转换结果中的79个,在80个转换开始前打开模拟信号(在79个转换DRDY发生后),然后只检索80个转换结果,结果为100 SPS。  

我用示波器检查了模拟信号稳定时间,大约是10us。 考虑到采样频率(8K),我认为10 us可以忽略,因为转换时间为125 us。  

但结果却是失败。 数据速率为100SPS,但转换不起作用,与示波器波形不同。

我尝试在稍早的时候打开我的模拟信号,比如在第78次转换,第77次转换等时打开,结果当我在第76次转换时打开它,我得到了正确的ADC结果。

在第76次转换时,我只能将功耗降低到原功耗的4/80。 仍然需要更多的削减。  

另一个问题是在高速数据速率下使用ADS1298时,我似乎没有足够的时间来检索数据。  

我正在使用5CH (1~5ch),但我只获得了3CH的正确数据,其余2 CHS (4~5)没有正确转换。  

如果我将SPS降低到4K,2K,1K,那么所有转换都能顺利完成。 (从2000年开始,所有的覆盖物开始运行良好)

我的系统时钟为1.8M,我怀疑我的系统时钟过低,所以SPI通信速度不够快,无法检索125us中的5ch数据。

但是,对于简单的数学计算,给定SPI速度(系统时钟/2),它只需要大约(3 (转换标头)+3 (每个转换的字节)*5 (信道数))(总字节)*8 (每字节位)=144us,假定3CH的其余部分被忽略。

系统MCU在DRDY信号出现后,就会第一时间处理数据检索,所以我猜,以目前的时钟速度,目前的系统已经足够4k SPS (250US每次转换)了。 但是,仍然没有正确检索最后一个CH(#5)。  

总之,

1)在高速转换速率中,模拟信号在转换前应多久稳定下来?

我猜是在8K模式下,在DRDY信号发生之前,只需要125us耳塞就足够了。

2)在高速转换速率(8K)中,要检索多通道数据(5ch)而不损坏数据,系统时钟(SPI Clock)的速度应该是多少?

为什么会出现这样的结果? 我做错了吗? 或者我是否误解了ADS1298的操作?

请帮我解决。

提前感谢您的参与。

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

    您好,Jonghyun,

    感谢您的帖子。

    这里有很多信息,所以我先提出一些建议,然后我们再继续。

    对于入门级产品,1.8 MHz的系统时钟输入(fCLK)超出了外部时钟频率的规范。 额定时钟频率为2.048 MHz,最小为1.94 MHz,最大为2.25 MHz。 另外,您能否说明您使用的是连续转换模式还是单影像模式?

    [报价用户="Jonghyun Park"]

    1)在高速转换速率中,模拟信号在转换前应多久稳定下来?

    [/引述]

    当模拟输入信号(称为"步骤")突然变化时,数字滤波器的输出将需要一些时间才能适应新值。 这在第51-52页上有说明。 图57显示了在起始引脚上(或在start SPI命令之后)从低到高转换之后,作为主时钟周期(tCLK)函数的稳定时间(tSETLE)。 /DRDY将在读取已确定的数据以进行检索之前处于空闲状态。

    图58显示了当ADC正在转换时,在输入步骤后如何忽略3个示例。 输入步骤发生后的第4个/DRDY下降沿可被视为固定数据。

    [报价用户="Jonghyun Park"]

    2)在高速转换速率(8K)中,要检索多通道数据(5ch)而不损坏数据,系统时钟(SPI Clock)的速度应该是多少?

    [/引述]

    最小SCLK速度可计算为Fdata *(n+1)* 24,其中n是信道数。 对于8 kSPS的5个信道,您需要最低SCLK频率为1.152 MHz。 运行SCLK的速度应该比运行速度快一点,以便考虑第17页中列出的所需计时规格。

    如果您还需要进一步澄清,请告诉我。

    此致,

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

    您好,Ryan:

    感谢您回答这些问题。

    有关我的配置的详细信息如下:
    我目前使用的是内部时钟模式,我认为这意味着系统时钟与ADS1298的额定时钟无关。
    另外,我使用的是连续转换模式,我想这意味着取决于主时钟的稳定除了第一次转换之外,不会影响太多。

    从你们的答复来看,我认为第一个问题已经解决。 我想除了第一次转换之外,我需要遵循的规则是,当连续转换期间有步进输入时,应该检索步进输入后的第4 /次下降边缘。 例如,对于8K SPS和连续转换模式,当有步进输入时,为125us*(3~4?) 输入步骤发生后应等待的时间。

    关于第二个问题,如果我使用带有操作码的RDATA模式(我使用的是RDATAC模式)读取数据,那么SCK最低速度是否仍然适用于我的配置? 因为我想使我的SPI时钟尽可能低,比在TDR中检索整个通道输出数据所需的时间更短,而且我不需要每个转换结果,所以我认为RDATA模式比 RDATAC模式更适合我的使用。 是否正确?

    最佳,

    延云公园

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

    感谢您的澄清。 最初,您使用的是SCLK =系统时钟/ 2 = 1.8 MHz / 2 = 900 kHz。 对于8 kSPS,这肯定会太慢。

    在RDATA模式下,如果您希望读取每个样本,则在计算最小SCLK频率时,必须考虑一个额外的字节。 8kSPS的最低SCLK频率为(RDATA +状态+ n*24)位* 8e3 = 1.216 MHz。 但是,RDATA允许您按需读取最近的转换,而不必读取每个样本。 如果SPI事务与下一个示例重叠,则数据不会损坏。

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

    您好,Ryan:

    感谢您提供更多信息和回复。

    我的SCLK是系统时钟/2,这是什么意思?

    据我所知,SCLK依赖于主时钟(系统时钟),而不一定是主时钟的一半。

    实际上,我将SPI时钟设置为主时钟的一半。  

    总之,回到您提到的问题,我想请您澄清有关8kSPS,900kHz速度太慢的评论。  

    据我所知,SCLK与ADS1298的操作无关,因为ADS1298已设置为由内部时钟操作。  

    您是否认为900kHz的速度太慢,无法在输出速率范围内检索数据?

    如果是,这对我没有关系,因为我不会检索每个转换样本,而是使用RDATA命令每40~80次转换检索一次。  

    最佳,

    延云公园

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

    您好,Jonghyun,

    Jonghyun Park 说:
    我的SCLK是系统时钟/2,您的意思是什么?[/QUOT]

    您在第一篇文章中提到"但是,通过简单的数学计算,给定SPI速度(系统时钟/2),..."

    [引用user="jonghyun Park]不管怎样,我想请您澄清一下,对于8kSPS,900kHz的速度太慢了。  [/引述]

    900 kHz的速度太慢,无法在输出数据速率周期内读取数据。 以前,您使用的是RDATAC模式,每当SPI事务重叠下一个/DRDY下降沿时,您的数据可能会损坏。 在RDATA模式下,这不是问题。 您可以随时发出RDATA命令并读取最近的转换。

    此致,