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.

[参考译文] ADS131E06:数据读取位被反转。

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1460194/ads131e06-bits-of-data-read-are-inverted

器件型号:ADS131E06

工具与软件:

我们已经为传感器制作了一个带有新 ADS131E06的电路板。
ADS131E56的读取数据位每几万次翻转一次。
无论是在通道中还是在位中、反转点每次都不相同。

传感器具有多种类型的外部通信、
在 USB 通信或 RS422中尚未观察到这种现象、
仅以太网通信中的 UDP 和 TCP 显示症状。

此外、与 UDP 相比、TCP 翻转位的频率更高、
不过、通信肯定会受到影响、
但是、目前尚不清楚数据损坏的原因是否是什么
 是否在 SPI 通信期间发生?
 是否由 ADS131E06中的转换引起?

无法识别。
请提出任何建议。

我们尝试了:
・SCLK 周期1M 更改为4MHz
SDO 的上拉电阻值从1k Ω 更改为4.7k Ω
・Ω 向 SCLK、SDI 和 SDO 添加阻尼电阻器33 Ω
IN*P 和 IN*N 之间短路(*:1-6)
执行 μ að 转换的周期变化0.5ms、1ms
更改通信间隔1ms、2ms
SPI 读取时序的变化
以太网通讯共模滤波器的变更。

ADS131E06设置:
・AVDD=4.5V、DVDD=3.3V
电容器的最小建议值为・μ F。
μ・寄存器。
0x01:0xb2 DAISY_IN=0、CLK_EN=1、DR=0b010 (24位16k)
0x02:0xe0、INT_TEST=0、TEST_AMP0=0、TEST_FREQ=0
0x03:0xe0、PDB_REFBUF=1、VREF_4V =1、OPAMP_REF=0、PDB_OPAMP=0
0x04:0x00、COMP_TH=0

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

    尊敬的 Keizo MIZUI:

    您有一个重复的帖子、我已关闭您的其中一个帖子。

    ADS131E06 ADC 无法检测和知道 您使用的接口(USB、RS422或以太网)、然后以不同的方式移出数据。 为了验证 ADC 的 转换和通信、您可以通过设置 MUXn[2:0]将输入短路至001b CHnSET 寄存器或使用精密直流信号、然后继续监控 ADC SPI 时序、尤其是在  观察到位 TCP 时。 以下时序 是典型时序:   

    顺便说一下、您的1MHz SCLK 频率不足以读取所有通道数据、采样周期为1/16k=62.5us、您必须在此期间读取状态字+所有数据。

    BR、

    戴尔

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

    你(们)好、Dale

    感谢您的答复。

    转换不使用连续模式、
    发送启动命令后、
    发送 START 命令后会立即发送 STOP 命令。
    数据表指出、当 DR=0b101且 tclkmax=588ns 时、稳定时间为584tclk
    最大584*588ns=344us
    转换每500us 执行一次。

    下面简化了微控制器中的该过程。

    initialize();
    while (1){
     if (TimeCount > 500us){
     SPI_DSAD_READ ();
     SPI_DSAD_Conversion_start ();
     SPI_DSAD_Conversion_stop ();
     calculation_for_sensor();
     }
     communication_process_read();
     if (flg_send_data){
     communication_process_WRITE();
     }

     TimeCount++;
    }

    当通信是以太网通信时、大约每几万到数十万次。
    尖峰的情况下。

    测量值:

    12月
    CH1 CH2 CH3 CH4 CH5 CH6
    -8250 -9750 -8200 -9500 -7100 -9270
    -8190 -9760 -8260 -9410 -7120 -9420
    -8268 -50900 -8208 -9506-3532-531506 <= CH2、CH6上的尖峰数据
    -8340 -9870 -8140 -9430 -7240 -9210
    -8300 -9850 -8080 -9270 -7260 -9300


    十六进制
    CH1 CH2 CH3 CH4 CH5 CH6
    FFDFC6 FFD9EA FFDFF8 FFDAE4 FFE444 FFDBCA
    FFE002 FFD9E0 FFDFBC FFDB3E FFE430 FFDB34
    FFDFB4 FF392C FFDFF0 FFDADE FFF234 F7E3CE
    FFDF6C FFD972 FFE034 FFDB2A FFE3B8 FFDC06
    FFDF94 FFD986 FFE070 FFDBCA FFE3A4 FFDBAC


    CH2 FFD***->FF3*** D(1101)->3(0011)
    Ch6 FFD***->F7E*** F(1111)->7(0111)


    使用 USB 或 RS422时、未观察到位反转的症状。

    可以确定尖峰是由以太网通信引起的、但是
    不知道是由于噪音还是软件问题。
    ADS131E06是否会导致上述位翻转?
    如果有有效的措施可以解决这个问题、我想得到建议。

    此致、

    水井敬三

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

    尊敬的 Keizo MIZUI:

    我会检查详细信息并尽快与您联系。

    BR、

    戴尔

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

    尊敬的 Keizo MIZUI:

    正如我在上一篇文章中所述、 ADS131E06 ADC 无法检测并知道 您使用的接口(USB、RS422或以太网)、然后以不同的方式移出数据、位翻转肯定 不是由 ADC 引起。 我还建议您继续监控 ADC SPI 时序、尤其是在  观察到位 TCP 翻转时、以便您可以对其进行验证并仔细检查。

    BR、

    戴尔

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

    你(们)好、Dale

    我们仍在测试。
    我通过修改发送的命令看到了改进。

    即使我在连续模式下使用它也是如此。
    我一直在发送 RDATA 命令。
    我当时检查了数据表、发现不需要 RDATA、因此我更正了一下、
    这是大约半天检查的结果、但没有出现尖峰。
      导致尖峰{0x12、0x08、0x0A、0x00、0x00、 ... 0x00、0x00}
      更正后的响应命令           {0x08、0x0A、0x00、0x00、... 0x00、 0x00}的配置
    如果在连续模式期间发送 RDATA、会出现什么情况?

    此外、即使发送 SDATAC 以停止连续模式、然后发送 RDATA 命令进行读取。
    尖峰也会出现。
    从这些事实可以看出、尖峰是由 RDATA 传输引起的。
    我不知道它与以太网通信有何关系、但我不打算深入探讨这一点。

    我会继续测试一段时间。

    如果没有问题、
    我将关闭此案例。

    此致、

    水井敬三

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

    您好、 Mizui 惠三、

    连续模式会在每个 DRDY 下降沿将转换数据放置在输出寄存器中、以便可以通过以下 SCLK 直接移出数据。  RDATA 命令也将最新数据载入输出移位寄存器。  因此、 RDATA 命令不会更改任何内容。

    我强烈建议您监控 SPI 时序和数据。

    此致、

    戴尔

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

    尊敬的 Dale:

    我只有一个示波器。
    在异常期间很难提取波形。

    (我会考虑是否有办法做到这一点。)

    就示波器上的波形而言、
    波形很干净、没有叠加通信噪声的迹象。

    它也不太可能产生强烈的脉冲噪音,因为它在办公室。

    SCLK

    SDO

    时序 (振铃是由探头的长 GND 引起的。)

    此致、

    水井敬三

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

    尊敬的 Dale:

     当捕捉到微控制器的值异常时、通过来自 GPIO 引脚的触发信号。
    发生数据损坏时会获取这些波形。

    因此、发送 RDATA 命令后会出现数据损坏现象
    经确认出现在 ADS131E 传输时。

    对输入进行频谱分析 发送的内容  
    AD 转换、间隔为0.5ms。 以1ms 的间隔进行采样
    有何影响 二进制 十进制 漂移 十进制
    1. 1111111101011110011110 -10338. 253.6. -10338.
    111111111101001101100100 -11420
    11111111110100111101111011100 -11300 253.601. -11300
    2. 111110101111100101001000 -329400 253.6. -329400
    111111111101100001111000 - 10120
    111111111101100001101110 -10130 253.601. -10130
    3. 111111111111110110011000 -616. 253.6. -616.
    1111111111001110111100 -3140
    1111111111010010011000 -2920. 253.601. -2920.
    4. 111111111111101101011100 -1188. 253.6. -1188.
    111111111101001100001010 -11510.
    111111111101001100010100 -11500 253.601. -11500
    5. 111111010000000000110010 196558. 253.6. 196558.
    111111111100111001100100 -12700
    111111111100111001100100 -12700 253.601. -12700
    6. 1111111111010011000000 -2880 253.6. -2880
    1111111110010110001110 -6770
    1111111110010111111100 -6660. 253.601. -6660.

    目前、我们正在继续进行测试、未发送 RDATA、但
    峰值数据尚未出现。

    我忘记了当 DR = 0b11 (8kHz)时、在1kHz 的 AD 转换频率下
    即使在传输 RDATA 的过程中也未出现尖峰。

    此致、

    水井敬三

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

    您好、 Mizui 惠三、

    关于您的 描述、这种现象仅发生 在 以太网   通信模式下的 UDP 和 TCP 情况下、在向 ADC 发送 RDATA 命令后、USB 通信或 RS422中未观察到。 如果我的理解不正确、请更正我。

    这些接口和 ADC 之间应该有一个微控制器、ADS131E06 ADC 不直接使用任何以太网或 USB 通信或 RS422接口、仅使用 SPI 总线、因此我很难了解 这种现象与这些接口有何关系、但这肯定不是 ADC 引起的。  如果您仅在更高的数据速率下看到该现象、而且这也与 这些接口有关、则 可能必须检查这些接口在硬件或软件方面的差异、尤其是 PCB 布局、这些接口可能导致串扰(包括电路板上的 SPI 总线)。

    BR、

    戴尔

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

    尊敬的 Dale:

    不执行以太网通信时关闭
    未启用用于检测数据损坏的触发器。
    源自通信的噪声肯定会产生影响。

    这个测量的电压范围。
    我找不到任何可能导致问题的部件。

    考虑到任何通道数据都可以在同步扫描中转换为数据。
    噪声最有可能干扰端子的位置是什么?

    此致、

    水井敬三

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

    你(们)好、Dale。

    感谢你的帮助。

    检查 RDATA 命令是否是数据损坏的原因之一
    我 将 RDATA 替换为看似不会影响操作(WAKEUP 和 RDATAC)和无效值(0xff)的命令。当发送任何命令时、读数并不总是正常并且未经验证。 设置了延迟时间并更改了时序、而不是发送 RDATA、但未发生数据损坏。

    在进行修改以避免传输 RDATA 之后、
    接收数据几天、但未发生尖峰。
    该案例被视为已解决和关闭。

    此致、

    水井敬三