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.

[参考译文] ADS8568:连接到 ATMEGA2560 的 SPI 接口

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1527290/ads8568-spi-interface-to-atmega2560

器件型号:ADS8568

工具/软件:

你(们)好

是否有人能够通过 SPI ATMEGA2560 连接至 ADS8568?

在我当前的应用中、ADS8568 的布局适合串行模式操作。
到目前为止、我未能在 MISO 线上读回读数。

查看 ADS8568 的规格表后、其时序要求似乎比 ATMEGA2560 的要求高得多。
(好像是为了与 C2000 或 FPGA 配合使用)

例如:
应注意确保的延迟时间
在应用串行时钟之前、满足来自 DMCS/CS 下降沿的最高有效位 (FS)。 减少
延迟指定为最大 12ns

由于 ATMEGA 的工作频率为 16MHz,其最快的指令将在 62nS!

我是否认为 ATMEGA2560 无法通过 SPI 与 ADS8568 通信?

如有任何帮助、我们将不胜感激。

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

    您好、PowerGuy、  

    感谢您在 TI E2E 论坛上发帖!  

    ATMEGA2560 尚未经过专门测试、但 ADS8568 使用 SPI 协议 CPOL = 1、CPHA = 0、并且 SCLK 速度范围为 100kHz 至 45MHz、因此  ATMEGA2560 的 16MHz(甚至 8MHz) 可以)可以发出 SPI 配置声音。  

    正确、但 ADS8568 的要求可能取决于器件的使用方式。 这些器件可能非常复杂、并具有丰富的配置选项、这使得 C2000 和 FPGA 等微控制器能够使用超出标准 SPI ADC 的器件。  

    所有此可配置性的另一个额外优势是、它还可与更直观的配置一起使用、同时仍可从其高性能中受益。 所以并不总是需要 C2000 或 FPGA。  

    是否可以共享要使用 ADS8586 的配置?

    如果您可以分享原理图以及示波器或逻辑分析仪的屏幕截图、说明当前数字通信的情况、这将有助于了解回读失败的原因。  

    为了解决您的  tDMSB  问题、共有的引述来自 ADS8528、ADS8548、ADS8568 时序注意事项、该应用手册重点介绍使用外部时钟实现这些器件全速所需的时序要求、并确实重点介绍了 C2000+控制器。  为了实现最大的数据吞吐量、 应注意将通信配置为使用最低时序要求、但也有其他方法可以使用该器件。

    即便如此、这也是器件数字输出引脚的规格、因此使用最大值来表示器件的高性能、不一定是控制器的要求。 在该用户指南中、 tDMSB 用于使用公式 tDMSB + tsu min 来确定 FS 和 SCLK 之间的延迟、以进行适当的读取操作。数据表中未明确说明 tsu min、但它与 SCLK 的速度相关、对于该器件、该速度应介于  100kHz 到 45MHz 之间、从而提供足够的裕度。  

    tDMSB 是从 FS(帧同步)变为低电平到 MSB 数据在 SDO 上有效的延迟。 最大值为 12ns、这意味着 FS 变为低电平后、MSB 数据将不超过 12ns 来转换到有效的 MSB 位值。 该值将保持该状态、直到串行时钟 (SCLK) 的下降沿、之后它将保持该值至少 5ns (tHDO)、但不超过 17ns、因为在 SCLK 下降沿之后 17ns (tPDDO) 或更短、下一个数据位将在 SDO 上设置、依此类推、直到 16 位帧完成(或 32,具体取决于其配置方式)。 使 SDO 输出依赖于 SCLK 输入。  

    这意味着、使用串行模式时、FS 变为低电平和 SCLK 变为低电平之间的延迟应介于:  

    • SCLK 上的最高速度 (45MHz): TDMs +(tSCLKmin - tPDDO)= 12ns +(22ns - 17ns)= 17ns
    • SCLK 上的最慢速度 (100kHz): TDMS +(tSCLKmax - tPDDO)= 12ns +(10us - 17ns)=~10us

    使用 tSCLK - tPDDO 代替 TSU、

    另请注意、使用内部转换时钟 (CONFIG 位 C29 = 0) 而不是外部转换 时钟 (XCLK 输入引脚和 CONFIG 位 C29 = 1)、也可以在与器件进行通信时使用更简单、更慢的方法。  

    此致、  

    Yolanda

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

    早上好、

    感谢您的答复。  
    ATMEGA2560 能够与 ADS8568 通信。
    我没有正确配置 ADC。 (RESET 引脚为高电平)


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

    早上好!

    很高兴听到 ATMEGA2560 能够通信! 谢谢你让我知道!

    此致、  

    Yolanda