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.

[参考译文] ADC161S626:ADC 输出的计算

Guru**** 2512455 points


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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/850043/adc161s626-calculation-of-adc-output

器件型号:ADC161S626

您好!

我正在尝试将 ADC 值发送到 SPI 上的微控制器(Hercules)。 ADC 需要18个时钟来输出16位数据、但 Hercules 的最大字长为16位。 因此、我正在执行2次连续接收、这样我得到2个16位字、然后将这些字移出2个位以补偿2个时钟周期。 但我无法获得 MISO 引脚上的确切读数。 您还能帮助我处理将获得的代码转换为模拟电压值时应使用的数学运算。 (我在单端工作模式下使用 ADC)

谢谢、

Aditi

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

    您好、Aditi、

    结果将是一个带符号的二进制补码16b 代码。  您提到过您使用的是单端。  在这种情况下、假设模拟电源设置为5V、则 VREF 输入和负模拟输入(-IN)应设置为2.5V。

    在正模拟输入(+IN)引脚上施加0->5V 的电压将提供以下代码(参见图47):

    0V 输入将提供1000.0000.0000.0000.0000b 的负满量程代码。  (-32768d)

    2.5V 输入将提供一个零标度代码、0000.0000.0000.0000b (0d)

    5V-1LSB 输入将提供满量程代码、0111.1111.1111.1111b (32767d)

    要根据转换代码计算输入电压、公式将为:

    Vinput = 2.5V + 2*Vref*code/2^16

    代码=-20000d

    Vinput = 2.5V + 2*2.5V*-20000/65536 = 0.97412V

    此致、
    Keith Nicholas
    精密 ADC 应用

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

    非常感谢。 这解决了我的问题