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.

[参考译文] ADS8363EVM:测量器件的错误读数。

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/635848/ads8363evm-measuring-wrong-reading-from-device

部件号:ADS8363EVM
在“线程:ADS8363”中讨论的其他部件

你(们)好

我正在使用ADS8363 EVM,M0和M1的跳线打开,显示自动模式,仅通过SDOA,现在我尝试在两个不同通道中从相同电压源采样数据,但得到不同的结果。一个通道给出正确的结果。(在 调试中使用断点运行时) 模式)。但有时它也会给出错误的结果。(在调试模式中直接运行而没有任何断点时)。 我正在使用主机MSP430F5529LP。 在转换和后处理后,检查存储在阵列中的mV值。我无法找到原因 。我还在开始写入SDI以打开Ref1 DAC,通过使用万用表进行检查,我能够在EVM上的该引脚处看到2.4 V, 建议可能出现的问题。

(忽略任何打字错误)。

PS:我还想在模式4下以psedo不同模式工作,但我不清楚如何实现,因为它是自动的,所以我们不需要 定义通道序列。Plaese也在这方面显示了一些指示。

编辑:1.

我检查了芯片处的模拟输入电压也是一样的,我也假设它是在全差动模式下,差动输入的-ve端子接地。

此致

安摩尔

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

    我正在研究这件事,并将很快回复您。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Anmol:

    为了确保我理解您的设置,您是通过J1接头为两个通道提供直流电压? 您能否提供按预期工作的通道以及不工作的通道的转换(二进制)输出?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Evan:

    是的,我正在使用J1标头向电路板提供输入,正如我所说的那样,我在连续运行时,只在断点模式下获得正确的结果。它(正确的一个)也给出 了错误的结果。我正在使用以下代码将输入ADC代码转换为mV。 另外,我将两个通道中的每个通道存储在100的数组中,以检查其所取的值以及可见的变化量。

    *************************

    void bitloader_ADC16 (int reg1,int reg2,int reg3)

    UCB1TXBUF = 0x80;

    UCA0TXBUF = reg1;

    同时(!(UCB1IFG&UCRXIFG));

    Data1 = UCB1RXBUF;

    UCB1TXBUF = 0x00;

    UCA0TXBUF = reg1;

    同时(!(UCB1IFG&UCRXIFG));

    Data2 = UCB1RXBUF;

    UCB1TXBUF = 0x00;

    UCA0TXBUF = reg3;

    同时(!(UCB1IFG&UCRXIFG));

    Data3 = UCB1RXBUF;

    ADC16 (data1,data2,data3);

    }

    void ADC16 (内部d1,内部d2,内部d3)

    信道=(D1和0x40)>> 6;//0x40信道编号 // 0x20 ADC名称

    ADC_No = (D1和0x20)>> 5;

    IF (信道== 1 && ADC_No == 0)

    {符号= 0x10&D1;

    符号=符号>>4;

    ADC_14_11 = D1&0x0F;

    ADC_10_3 = D2;

    ADC_2_0 =(D3>>5);

    ADC_FINAL =(ADC_14_11<11)|(ADC_10_3<3|ADC_2_0;// 0.1907mV是1LSB的转换

    ADC_FINAL_MVP = 0.0762 ;

    VX[I]= ADC_FINAL_MVP;

    I++;

    }

    IF (信道== 0 && ADC_No == 1)

    {符号= 0x10&D1;

    符号=符号>>4;

    ADC_14_11 = D1&0x0F;

    ADC_10_3 = D2;

    ADC_2_0 =(D3>>5);

    ADC_FINAL =(ADC_14_11<11)|(ADC_10_3<3|ADC_2_0;// 0.1907mV是1LSB的转换

    adc_final_mVn = adc_final * 0.0762 ;

    vx2[k]= adc_final_mVn;

    K++;

    }

    如果(i = 100)

    I = 0;

    如果(k =100)

    K =0;

    }

    *************************

    此致

    安摩尔

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

    由于在使用断点时看到的值是正确的,但在自动运行时却看不到正确的值,因此输入可能没有在给定的时间范围内达到预期的水平。 请提供以下信息:

    -您正在使用哪些ADC输入?
    -您使用什么作为信号源(传感器,电源等)?
    -在自动模式下操作设备时,您能否使用示波器捕获您的输入信号,而无需断点?
    -在自动模式下运行时,每个通道的结果是什么? 结果是否相对一致(仅由LSB或最多两个更改)?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Anmol:

    我还没有收到您关于我的上述问题的回复,因此我将结束此话题。 如果您有任何其他问题,请随时回复此帖子或开始新的主题。