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.

[参考译文] ADS131A02:寄存器输出数据全部为0x2272

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/938188/ads131a02-register-output-data-are-all-0x2272

器件型号:ADS131A02

大家好、我遇到了一个问题、就是几天前我买了一个 ADS131A02芯片、现在我已经将驱动程序配置为在读取每个寄存器时输出0x2272数据。  当读取32位 AD 的数据输出时、发现数据输出为0x00002272。  现在我不知道问题是什么以及如何解决。

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

    您好!


    ADS131A02非常具体地描述了通信的方式及其对命令字的期望。 我猜是通信帧有问题、您得到的响应是状态响应、因为器件不了解命令。 请注意、状态响应的第一部分是22h、这相当于对2h 寄存器(即状态)的读取。

    首先、您对 M0、M1和 M2引脚的设置是什么? 您是否正在使用固定帧模式的动态帧模式进行通信? 请注意、对于任何通信模式、您都应该完成通信并提供足够的 SCLK 脉冲。

    它还有助于显示与器件的 SPI 通信。 您应该会得到一个示波器来显示 DIN、DOUT、CS 和 SCLK、以显示器件正在发送和接收的内容。 在您能够查看通信后、您可以将其发布回此处。 解释要发送到器件的命令序列及其之间的时序也可能会有所帮助。 请注意、命令响应也很有用、因为它们可用于调试从前一帧发送的命令。


    吴约瑟

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

    我使用示波器测量 CS、SCLK 的波形、:1是 CS、2是 SCLK、 结果如下:

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

    示波器测量 CS、SCLK、CS 和 SCLK 的波形。:1为 CS、2为 SCLK

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

    我使用示波器测量 MISO 和 MOSI、结果如下:1为 MISO、2为 MOSI。

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

    我的 SPI 频率为72MHz,256频率分频,然后 CLK1设置为0x80,CLK2设置为0x2F .m0= VDD、M1=GND。

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

    您好!


    同样、您对该器件使用了哪些设置? 我在上一篇帖子中询问了有关 M0-M2设置和您使用的帧模式的几个问题。

    我在示波器快照中看到的问题是/CS 线每32个 SCLK 返回高电平。 如果您使用的是具有32位字的 ADS131A02、并且您使用的是固定帧模式(我只是将其用作示例)。 那么您的通信将是4个数据字。 通信将是状态字、通道1数据字、通道2数据字、然后是 CRC 字(如果禁用 CRC、该字将全为0)。

    在操作中、/CS 变为低电平以启用通信、然后传输全部四个字。 总共32x4 (或128)个 SCLK、然后/CS 变为高电平。 您不能在每个/CS 活动周期将通信分成32个 SCLK。

    更改通信以为每次通信发送128个 SCLK、并查看您获得的结果。


    吴约瑟

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

    大家好、现在通信是正常的、但当我读取03和04寄存器时、它会提示我超出范围、但现在我的输入已接地、并且还会提示我超出范围。 问题是什么?

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

    您好!

    我假设您查看的是 STAT_P 和 STAT_N 寄存器、并且看到输入已超过阈值检测的值。 寄存器03h 和04h 的读数是多少?

    此外、您的输入值设置为什么? AVDD 和 AVSS 的电压是多少? 您是否启用了负电荷泵?  

    如果 AVDD=3.3V、AVSS=0V、并且负电荷泵关闭、则连接负输入将低于阈值电压。

    但是、如果您打开负电荷泵、则 AVSS=0是在输入范围内的、并且不超过阈值。

    仔细阅读我的问题、并向我发送您的答案。


    吴约瑟

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

    很抱歉、我可能没有说明自己。 当我读取 STAT_P 和 STAT_N 寄存器时、它们返回的数据为:0x2303和0x2403。  建议 IN1和 IN2的正输入和负输入都超过阈值、但 IN1和 IN2的正输入和负输入都为0。 我的输入设置如下:AVDD=5V、AVSS=0V、IOVDD=3.3V、启用负电荷泵。

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

    您好!


    首先、启用负电荷泵后、您的 AVDD 至 AVSS 的最大电压为3.6V。 仅当禁用负电荷泵时、AVDD 至 DVDD 的电压才能为5V。 这来自绝对最大值表、您可以在下面看到该表。

    此外、在启用负电荷泵的情况下、器件建议的工作范围为3.0V 至3.45V。 这来自数据表中的建议运行条件表。

    现在、如果您已在0V 至5V 的电压范围内运行电源、则负电荷泵可能无法正常工作。 我想电源仍然是0V 和5V。 如果您尚未更改阈值设置、则 A_SYS_CFG 寄存器中 COMP_TH 的阈值设置仍设置为高阈值电源的95%、低阈值电源的5%。

    然后、如果输入为0V、则两个输入都低于下限阈值:

    这将导致设置03h 和04h 的标志。 我认为这是问题的可能原因。 如果可以、将输入更改为接近中间电源、以查看该标志是否消失。 或者、您可以将电源更改为3.3V、然后启用负电荷泵。 我还想指出、使用负电荷泵的5V 电源可能会损坏器件。 但是、我没有听说过器件意外进入此模式造成的损坏情况。


    吴约瑟