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**** 2796425 points

Other Parts Discussed in Thread: ADS1298

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/697970/ads1298-problem-reading-register-from-spi

器件型号:ADS1298

我使用来自北欧的 ADS 1298和 NRF52832时,当我尝试读取 ID 控制寄存器( 00h )时,我遇到了问题,我只是得到了随机值,可能问题是 ADS 和 nRF52之间的 SPI, 我使用 Arduino 测试 NRF 的 SPI、它运行良好、我使用128Khz 进行测试、使用128K、250K、500K、1M、2M、4M、8M 等广告、我尝试在配置任何其他寄存器之前读取 ID 控制寄存器。  可以帮帮我吗?

SCLK 的频率是多少?  我是否必须等待发送或接收的每个字节?

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

    感谢您的发帖、欢迎加入论坛!

    您能否提供这些随机值的示例?

    串行接口的时序要求可在数据表的第7.6节中看到、并且最小 SCLK 周期为50ns。 但是、这将取决于您的采样速度。 这可以在涵盖 SCLK 的数据表的第9.5.1.2节中看到。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您的快速回答、有时我得到00h (大多数时间)、c2h、35h、e6h、06h。
    对不起,我不会说英语,“SCLK 的频率是多少?” 我想、如果我还没有配置任何寄存器、那么 SCLK 的建议频率是多少? 我只想读取 ID 寄存器以了解 SPI 的工作情况。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Luis、

    抱歉、我不明白您的意思。

    由于 SCLK 由外部源供电、因此 ADS1298没有推荐的 SCLK 频率、而是根据数据模式和正在读取的通道数量、具有可接受的最小和最大 SCLK 频率限制。

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

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

    请参阅数据表中的等式7: tSCLK <(TDR–4tCLK)/(NBITS×NCHANNELS + 24)以调整 系统的速度。  

    最大 SCLK 速度取决于施加的 DVDD 电压。 对于2.7VDC 至3.6VDC 之间的 DVDD、您可以使用的最快 SCLK 为20MHz (50ns 周期)。 低于2.7V 时、SCLK 被限制在66.6ns 或者大约15MHz 的周期内。

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