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.

[参考译文] ADS127L21B:TMS320F28P21B 菊花链寄存器写入 TMS320F28P650DH6 的问题

Guru**** 2482225 points
Other Parts Discussed in Thread: ADS127L21B, ADS127L21

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1551287/ads127l21b-ads127l21b-daisy-chain-register-write-issue-with-tms320f28p650dh6

器件型号:ADS127L21B
主题: ADS127L21 中讨论的其他器件

工具/软件:

您好:

我目前正在研究通过 SPI 将两个菊花链模式下的 ADS127L21B ADC 与 TMS320F28P650DH6(C2000 系列)微控制器连接在一起。

按照前面关于寄存器配置的指导、我实现了对器件寄存器进行写入的建议方法。 具体而言、我正在尝试配置寄存器 0x0B (MODE0)、以便将两个 ADC 设置为仅数据输出模式。

但是、在两个 SPI 帧期间、我始终收到来自 ADC 的输出 0x000000FFFFFF、这似乎不正确。 这意味着寄存器写入可能未生效、或器件未按预期响应。

密钥详细信息:

两个 ADC 都以菊花链模式连接

SPI 接口:TMS320F28P650DH6 上的 SPID

正确管理芯片选择 (CS)、START、RESET 和 DRDY 信号

DRDY 受到监控并同步

我尝试将 0x0B 写入 MODE0 寄存器(地址 0x0B)

使用逻辑分析仪验证了 SPI 信号—观察到 MOSI 活动、但 MISO 始终返回 0xFFFFFF

我非常感谢对可能出现的问题有任何见解或建议。

如果需要任何其他信息(代码片段,逻辑分析仪捕获结果等)、请告诉我。

因为两个 ADC 都配置在中 菊花链模式 、我想确认正确的 DRDY 引脚以监控数据就绪指示。 目前、我将两条 DRDY 线路 (ADC1 为 GPIO11、ADC2 为 GPIO61) 连接到 MCU。

在菊花链配置中、需要对其进行监测 两个 DRDY 引脚 或正在监视 仅链中最后一个 ADC 的 DRDY 引脚 (ADC2) 足以实现同步?

我的理解是、在菊花链模式下、两个 ADC 同时采样、并通过链串行传输数据。 因此、使用 仅限 ADC2 的 DRDY (GPIO61) 应该足够了。 请您确认一下。

如果您对导致恒定 0xFFFFFF 读取问题的原因有任何见解或建议、我们将不胜感激。 请告诉我、代码片段或逻辑分析仪波形等其他信息是否有用。

提前感谢您的支持。

此致、

Divyesh Patel

 

 

 

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

    尊敬的  Divyesh Patel:

    上电复位后 ADS127L21 的默认模式为双 SDO/DRDY 模式。  在此模式下、不能使用菊花链。  为了写入链中的每个 ADC、您必须重复写入 FILTER3 寄存器以重新配置每个 ADC。

    另一位客户最近遇到过同样的问题;请参阅以下 e2e 主题、其中说明了在复位后如何配置 ADC。

     https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1546195/ads127l21-daisy-chain-connection 

    对于 DRDY、您需要 使用 START 引脚或通过命令使用公共 START 信号来同步菊花链中的所有 ADC。  ADC 同步后、所有 ADC 上的 DRDY 引脚将同步、您只需监控整个菊花链的 1 个 DRDY 引脚。  数据表的 7.4.6 中提供了同步详细信息。

    以下应用手册提供了使用菊花链时的其他指导。

    同步采样系统中的 ADS127L11

    此致、
    Keith Nicholas
    精密 ADC 应用

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

    您好 Keith、

    感谢您提供详细的解答、并向我介绍相关的 E2E 主题。 我已经回顾了几乎所有与 ADS127L21 和其他精密 ADC 主题相关的讨论。

    根据您的建议、我知道复位后、我们需要为菊花链中的每个 ADC 重新配置 FILTER3 寄存器。 我已在代码中执行此步骤。 但是,我仍然面临相同的问题 — 两个帧都返回 0x000000FFFFFF。

    如果可能、您能否分享任何用于将 ADS127L21 配置为菊花链模式的示例代码、寄存器写入序列或任何控制器逻辑? 提供有效的参考设计对于验证我的设置和解决问题非常有帮助。

    如果您需要有关硬件连接、初始化序列或测试条件的任何其他详细信息、敬请告知。

    此致、
    Divyesh Patel

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

    尊敬的 Divyesh:

    我们有通用示例代码、但 没有任何菊花链示例。  您可以通过以下链接找到代码:

    https://www.ti.com/tool/download/ADS127L21-C-EXAMPLE-CODE

    我使用相同的逻辑分析仪/软件;使用默认寄存器值复位后立即启动、请发送一个完整的*。Sal 捕获文件、其中显示了整个初始化序列。

    此外、请确保/RESET 引脚保持高电平(通过 GPIO 控制或连接到 IOVDD)。  此外、如果您需要转换结果、则 START 引脚需要为高电平、或者您需要通过写入 CONTROL 寄存器 START 位来发送 START 命令。

    此外、展示 ADS127L21 连接的原理图屏幕截图也会有所帮助。

    此致、
    Keith

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

    根据您的要求、我附上了*。Sal 文件以供参考。

    我正在握持 复位 引脚为高电平、并手动提供所需的延迟 ( td - RSSC = 10、000 × CLKIN 周期 )。
    在中 首先 .Sal 文件,你可以清楚地看到后 启动 引脚变为低电平、逻辑布线中存在复位恢复时间 (~20ms)。
    只有这种延迟之后、我才写入寄存器、在这种情况下、我才能读取 0x000000FFFFFF 等有效值(即 MISO 线不会卡在零)。

    但是、如果我这样做了 不会 释放 RESET 后添加手动延迟、然后我始终收到 0x00 引脚上的 MISO 线。

    当我尝试执行时、也会出现同样的问题 通过 SPI 寄存器写入进行复位 通过 SPI 输入模式进行复位 —在这两种情况下、MISO 输出也保持不动 0x00 (这可在中看到 .Sal 文件)。

    因此、目前我卡住了、无法获得 MISO 引脚上的任何更新数据。

    在以下 E2E 主题中、提到您已成功编写 FILTER3 (0x0B) 在 A 中注册 四 ADC 菊花链
    https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1546195/ads127l21-daisy-chain-connection

    如果您可以分享您用于执行此操作的控制器逻辑或示例函数、我将能够确认我的写入序列是否正确、或者是否缺少某些内容。

      e2e.ti.com/.../5428.data.zip

    提前感谢您!

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

    尊敬的  Divyesh Patel:

    “我知道,我不会告你状的。

    您的控制器是否在正确(下降)沿锁存 SDO? 看起来第一条 24 位命令中的最后一次 SCLK 转换正好是因为 DOUT 正在从低电平转换为高电平。 当它应该为零时、这被错误地解释为 1。 逻辑分析仪也会在“通过 SPI 寄存器进行复位“.Sal 文件中的错误边沿启动

    此外、您能否确认链中有 2 或 4 个 ADC?

    最后、SCLK 必须为低电平空闲、ADC 才能正常工作。 在开始尝试更改 FILTER3 寄存器之前、信号上会出现干扰、其中 CS 会短暂变为低电平、SCLK 为高电平。 请更正此行为。

    -布莱恩