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.

[参考译文] ADS1192:不能读取 ADs1192寄存器

Guru**** 2551110 points
Other Parts Discussed in Thread: ADS1192

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/744391/ads1192-ads1192-register-can-not-be-read

器件型号:ADS1192

你好!

我目前正在尝试使用 NRF 52832读取 ADS 1192的寄存器。

不过、来自 ADS 1192的波形输出始终相同。

即使您更改寄存器的读取地址、DOUT 的结果输出也是相同的

DIN 的信号输入和 DOUT 的信号输出如下所示。

此致!

图1. DOUT

图2.DIN

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

    感谢您的发帖!

    让我们快速入门的几个方面:
    1) 1) ID 寄存器读回是否正确?
    2) 2)您是否遵循正确的加电顺序(图51和52)? 上电复位完成后、/DRDY 应以默认数据速率开始脉冲(假设 START 引脚上拉)。 tPOR 之后的/RESET 脉冲对于将数字内核置于正确状态至关重要。
    3) 3)在尝试读取寄存器之前、是否发送 SDATAC 命令?
    4) 4)频率是多少?您要发送多少个 SCLK 脉冲来输出时钟数据?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回复!

    ID 寄存器输出不正确、输入信号输出正确。

    蓝色表示 SCLK、黄色表示 DIN。

    在最常被布置的图2的 DIN 中、寄存器读取命令的0x20输出、SCLK 的4个脉冲用于读取寄存器、而要读取的地址由最后4个脉冲指定。

    这次我想读取第三个配置2、因此我输出0x03。

    2.是的! 它以正确的顺序运行、并且 DRDY 和 SCLK 的时序正确。

    当 SCLK 和 DRDY 正常工作时、放置图1。

    3.是的! 在发送 SDATAC 一次后、寄存器读数会在循环中输出。

    现在频率运行在1MHz、并发送8个 SCLK 脉冲以发送一个数据。

    图2中显示了该图片。

    图1.DRDY 和 SCLK

    fig2.freq_1MHz

    我有一件事我很担心。

    即使在 DRDY 信号未输出数据的情况下、也会进行切换。
    当蓝色 SCLK 输出脉冲时、DRDY 信号的时序和输出正确。
    但是、DRDY 信号也会在数据未输出时切换。 这是否表明 DRDY 信号不能正常工作?

    DRDY 每隔大约2ms 输出一次。

    此时的图像和放大的图像如下所示。

    最棒的问候!!

    图3.DRDY 和 SCLK

    图4.未输出 SCLK 时 DRDY 输出的放大视图

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

    Kaito San、您好!

    我无法理解您的数字是什么意思以及这些信号应用于何处。

    您说"蓝色是 SCLK、黄色是 DIN。" 但图1标记为"fig1.DRDY 和 SCLK"?

    /DRDY 不输出数据。 它仅表示新数据已准备就绪、应根据输出数据速率进行脉冲处理。  

    请查看数据表的数据格式部分、并更清楚地说明将哪些信号施加到哪些引脚。

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

    感谢您的回复!

    很抱歉,我错了。 在图1中、蓝色表示 SCLK、黄色表示 DRDY。

    以下是发送 RREG 命令的结果、其中黄色为 DIN、蓝色为 DOUT、绿色为 DRDY、紫色为 SCLK

    您可以看到、从 SCLK 的前8个脉冲中将0x22发送到 DIN。

    我在论坛上发现了一个非常类似的案例。

    但有了这个人的解决办法,我的问题就无法得到解决。

    它显示了我在下面提到的 URL

    e2e.ti.com/.../1752781

    最棒的问候!!

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

    我认为您发送的字节数不正确。 您必须为起始寄存器地址发送一个字节、为要读取的寄存器数量发送第二个字节。 现在、您要让器件从 CONFIG2开始读取寄存器、但不会发送额外的命令来告知器件您要读取的寄存器数量。 请阅读 RREG:从寄存器读取部分并参考图40。 请显示一张如图40所示的示波器图片。

    尝试发送0x22、然后发送0x01以查看是否可以读取 CONFIG2。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回复!

    我输出了0x22和0x01、其间有延迟。

    但是、输出值始终会变化、并且不会输出正确的值。

    下面显示了 DIN 和 DOUT 的输出结果 Zip 文件。

    最棒的问候!!

    e2e.ti.com/.../DIN-and-DOUT.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我还发现、当我发送 WREG 命令时、一些数据正从 DOUT 输出。
    因此、事实证明、只有在发送 RREG 寄存器命令时才会发生这种现象。
    但我不知道该数据是什么数据。
    请告诉我!
    最棒的问候!!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Kaito、

    这些图像没有标记。 我不知道我在看什么。 请提供更多详细信息。

    黄色迹线显示的倾斜行为不应在 DIN 或 DOUT 上出现。

    您能否提供一个原理图来显示测量这些信号的位置?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢,亚历山大!!

    抱歉、 在 DIN.png 中、蓝色表示 SCLK、黄色表示 DIN。 在 DOUT.png 中、蓝色表示 SCLK、黄色表示 DOUT。

    ADS1192的电路图如下所示。

    基于此电路图、开发了 ADS。

    目前、可以观察到 DIN 的输出、但无法观察到 DOUT 的输出。

    蓝色表示 DOUT、黄色表示 DIN、紫色表示 SCLK、绿色表示 CS。

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

    感谢您的澄清!

    您是否使用了正确的 SPI 设置? 您应该使用 CPOL = 0和 CPHA = 1。
    如果可以、请发布您的代码或操作顺序、以便我们可以对照数据表的第62页和第63页进行检查。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回复!

    我检查了它并将其更改为 CPOL = 0和 CPHA = 1。

    μs 将数据传输间隔设置为50 μ s 并 运行程序。

    然后我可以写入和读取寄存器!!!!

    但是、当寄存器重复读取40分钟时、无法观察 DOUT 的数据输出。

    是因为寄存器被长时间读取了吗?

    最棒的问候!!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好!!
    我成功读取了寄存器。
    读取失败的原因是、由于将 PWDN/ RESET 引脚设置为低电平且数据传输间隔较短、因此无法执行 ADS1192初始化和寄存器写入!!!
    但是、我们遇到的问题是、寄存器08h 的 LOFF_STAT 不能仅进行寄存器写入。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Kaito、

    很抱歉耽误您的回应、上周是美国的假日。

    我很高兴听到您现在能够读取/写入寄存器!

    您不打算写入 LOFF_STAT (08h)、因为它是由器件内部设置的、用于指示电极是否正确连接。