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.

[参考译文] ADS131M02:读取电压

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1420486/ads131m02-read-voltage

器件型号:ADS131M02
主题中讨论的其他器件: ADS131M04

工具与软件:

大家好、团队成员:

我所做的就是尝试读取电压。 也就是我用来提供电压的电位器。 请为我指引道路。 阅读方法

谢谢、此致、

Pavan

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

    尊敬的 Pavan:

    我建议您首先读取 ADC 的内部寄存器、以确保您的 SPI 接口和时序正确。 要读取内部寄存器、您可以发送带有或不带 CRC 字的 RREG 命令、如下图所示、寄存器数据将显示在下一帧的第一个字中。

    寄存器读取正确后、可以使用0的数据而不是发送 RREG 命令作为第一个字、您将能够看到来自 ADC 的转换数据。 我连接了一个时序示例来读取 ADS131M04中的数据、该示例还具有另外两个通道、与 ADS131M02相比:

    建议使用/DRDY 信号将您的命令或 SCLK 发送到 ADC。 您实际上可以在 ADS131M02数据表中找到所有信息和示例代码。  

    BR、

    戴尔

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

    尊敬的 Dale:

    当我在该 DOUT 引脚中读取单个寄存器时、给出的第一个响应小于给定的通道0数据。 我使用通道0连接电位器。 因此、它提供了理想值、并随着我增大和减小电位器而改变通道0数据中的时间。 但是、我不确定最小和最大 ADC 计数值的含义。 所以,请告诉我这件事。

    此致、

    Pavan

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

    尊敬的 Pavan:

    如果您想了解从 ADC 接收到的转换代码以及如何将其转换为输入电压、可以查看 ADS131M02数据表中8.5.1.9 ADC 转换数据的部分、请参阅下图:

    BR、

    戴尔

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

    尊敬的 Dale:

    我发送了像0x00 0x00这样的 RREG 指令来获取读取电压。 I 接收到 rxdata[0]=0x305并 rxdata[2]=0x100作为返回值、这取决于电位器值(0x100 -最小值、0x7f00 -最大值)。 rxdata[3]=0xb5 (它也在更改0xb5 -最小值、0xff 最大值)。 rxdata 的大小为16。

    谢谢、此致、

    Pavan

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

    尊敬的 Pavan:

    如果我的理解正确、那么这些数据是针对同一信号和通道收集的数据、您想知道如何将它们从代码转换为电压。 您可以使用下载并使用以下工具、该工具专为其他 ADC 而设计、但转换对  ADS131M02是相同的:

    ADS124S08 EXCEL-CALC-TOOL

    BR、

    戴尔

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

    尊敬的 Dale:

    首先,我要感谢您的建议。 当我测量电压时、我能够读取1.2V 的最大电压。 但是、我读取的电压没有超过1.2伏。 我使用了转换时间

    uint16_t rxData[5]

    uint32_t ADC_data =(rxData[1]<< 8)| rxData[2];

    float input_voltage =(ADC_DATA * 1.2)/ 8388608);//此处、8388608 = 2^23 (在这种情况下、如果我写入3.3、而不是1.2、因此它会提供最大3.3的、但每当我将3.3V 设置为 Vref 时、该时间我提供了1.116v。 该时间输出提供3.3V 电压。我认为这是个问题)

    请建议我使用额外电压。 我该如何进行?。或者请告诉我是否有电压转换公式。

    此致、

    Pavan

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

    尊敬的 Pavan:

    感谢您的澄清。  您想在公式中使用3.3V 而不是1.2V 作为 Vref、有什么原因吗? 为何您希望在 ADS131M02上读取高于1.2V 的电压? ADS131M02上的基准电压仅为1.2V、不可更改、差分输入电压范围为+/-1.2V/ Vref 增益、即+/-1.2V/增益。

    BR、

    戴尔