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.

[参考译文] ADS7924:STM32 IIC 读取寄存器无 ACK

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1492012/ads7924-stm32-iic-read-register-no-ack

器件型号:ADS7924

工具与软件:

我最近使用了 STM32来调试和读取 ADS7924。 在寄存器读取测试期间、我发现 ADS7924通常没有响应 ACK、导致读取和写入失败。

这是我的读取和写入过程

while (1)

写入 ADS7924 0x0A 寄存器0x5A;

读取 ADS7924 0x0A 寄存器;

延迟100ms;

}

我使用逻辑分析仪和示波器来捕获波形。 STM32发送的波形都符合手册中的读取和写入时序图。 没有得到确认的可能原因是什么? 以下是正常波形和异常波形、

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

    高开关 w、

    目前不确定问题可能出在哪里。  您能否提供一个示意图、说明如何将 ADS7924的各种引脚连接到控制器?

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

    尊敬的 Tom:
    我使用带控制芯片的 ADS7924EVM 板进行测试、并使用飞线将它们连接在一起。 控制芯片的 SDA 和 SCL 连接到 EVM 上 J10的 SDA 和 SCL。 此外、我还将两个传感器连接到 EVM 上 J1A 的 CH0和 CH1。 EVM 板上的 VDD 设置为5V、BVDD 设置为3.3V。 最后、我移除了 EVM 的 RA1电阻器并将其与我的控制芯片一同拉到电路板上。 谢谢。

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

    好的-它现在是否可以工作?

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

    它可以处理问题、就像我在开始时描述的问题一样。 有时、ADS7924不会发送 ACK 信号。

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

    您是否尝试过唤醒命令?

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

    否 如何使用 WAKEUP 命令? 我没有在手册中找到它。

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

    请参阅数据表第27页-默认为空闲模式、唤醒模式为 0x20

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

    我尝试了这个命令,仍然有这个问题。 我想知道该芯片的数据读取过程。 我的要求是能够在初始配置后以1kHz 的频率读取两个通道的 ADC 数据。 我现在需要采取哪些步骤? 例如、应首先配置哪些寄存器、以及如何在配置完成后定期读取数据?

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

    我曾尝试将模式设置为在上电后立即唤醒、但在上电后首次写入寄存器时、它可能会报告 NACK。 我该怎么办?

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

    您可以考虑使用不同的硬件、或删除其他组件。  我询问您的设置原理图时、您提供的图片是一个旧的 ADS7924EVM。  您已移除 I2C 上拉电阻(RA1)、并且未看到如何将 RESET 引脚拉至高电平。  Fly Wire 上的信号完整性也可能会成为一个问题。

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

    你好、Tom。
    感谢您的持续参与。 这是我的硬件连接图。 您能否看到是否有任何问题?

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

    如何配置 RESET?

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

    你好、Tom
    硬件上的复位引脚配置与评估板上的相同、我未对其进行任何其他更改。 我没有在软件上读取或写入复位寄存器。 我一直在查询器件是否在线、也就是说、我没有延迟软件来持续向7924发送地址查询响应操作。 通过逻辑分析仪、我们可以看到7924在响应和无响应之间来回切换。
    响应持续时间固定为仅约8.7ms、而无响应持续时间更随机、约为50ms。

    模块

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

    好-但是 RESET 引脚是否上拉?  如果您不采取任何措施、我认为它仍然是悬空的。

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

    你好、Tom
    我认为它应该在默认配置中上拉、并且此配置偶尔会有一个 ACK 信号。 然后我尝试移除 U5、而复位引脚悬空、7924完全没有响应。 我想问 RESET 引脚需要什么样的硬件配置?

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

    我曾尝试将复位引脚连接到3.3V 上拉、现在7924始终有响应。 感谢您的回答。