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.

[参考译文] ADS8588S:通过 SPI 接口读取数据错误

Guru**** 2393725 points
Other Parts Discussed in Thread: ADS8588S

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1015509/ads8588s-reading-data-error-through-spi-interface

器件型号:ADS8588S

您好!

从 ADS8588S 的 SPI 接口读取 ADC 数据时遇到问题。  电路板上有两个不同的 ADC、它们的行为方式相同。 ADC 由 FPGA 命令、 位于 Zynq 器件集成逻辑分析仪生成的波形图像下方。

/resized-image/__size/320x240/__key/communityserver-discussions-components-files/73/FRSTDATA_5F00_issue.png

BUSY 信号变为低电平后、SPI 通信开始。 CS (nADC1SPIC 信号)变为低电平、并使用 DOUTA 和 DOUTB (ADC1SPIMisoA_1和  DC1SPIMisoB_1信号)读回数据。 在 CS 信号被禁用前、提供16x4个时钟周期。 在 SPI 通信期间、FRSTData 信号上出现奇怪的行为:  

 FRSTData 信号在两个时钟周期后变为低电平、然后每8个时钟周期出现一个脉冲、直到通信结束。 此外、在 DOUTA 和 DOUTB 上有与 ADC 输入端的电压电平无关的同一波形。

还有人遇到了同样的问题吗? 您是否了解问题的根本原因?

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

    您好 Fabio、

    对于来自第一个通道的数据、FRSTData 应该只为高电平有效、如 ADS8588S 数据表中的图70。 所有通道的转换代码是否正确? 您是否为两个 ADC 共享同一个 SPI 接口?  

    我将看到我是否可以检查 EVM 上的时序。 我将很快通知您。

    此致、

    戴尔

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

    您好 Dale、

    我为两个 ADC 提供了两个独立的 SPI、每个 SPI 具有其信号(CS、时钟、DOUTA 和 DOUTB)。

    两个 ADC 的行为方式相同。 下面是从第二个 ADC 拍摄的一些图片:

    CH1 (黄色):CS

    CH2 (蓝色):FRSTDATA

    CH3 (红色)和 CH4 (绿色):DOUTA 和 DOUTB

    ----------

    CH1 (黄色):CS

    CH2 (蓝色): SPI 时钟

    CH3 (红色): 忙

    ----------------------------------

    您可以看到、在第二个 ADC 中、FRSTDATA 信号 似乎与上面提到的图70不符。 此外、在 DOUTA 和 DOUTB 上获取的转换代码是相同的(即 CH1=CH5;CH2=CH6=CH3=CH7=CH4=CH8)、看起来完全是随机的。 我认为 FRSTDATA 的行为也会影响 ADC 提供的 DOUTA 和 DOUTB 数据、结果是它们没有意义。   

    根据您的经验、是否有任何可能触发此行为的事件? 复位后、ADC 的 SPI 接口是否可能处于未知状态、并以这种方式运行?

    感谢您的支持

    Fabio

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

    您好 Fabio、

    我使用一个特殊系统检查了 EVM、该系统允许我实现不同的时序。 我能够再现您上面显示的时间。 然而、一旦 CONVSTA/B 信号被发送到 ADC 以启动一个转换、我能够在 SDOA 和 SDOB 上获得正确的数据、并且在 FRSTDATA 上获得正确的行为。 请参阅下面的时序比较:

    没有 CONVSTA/B 信号时、FRSTDATA 和 SDOA/B 上的行为不正确:

    2.使用 CONVSTA/B 信号时 FRSTDATA 和 SDOA/B 的正确行为:

    如果您对 ADS8588S 有任何其他疑问、敬请告知。 谢谢。

    此致、

    戴尔

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

    尊敬的 Dale:

    感谢您的支持。 我们解决了重新设计电路板的问题。  电路板的 CONVSTA/B 信号区域可能出现一些工艺错误、导致了问题

    Fabio