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.

[参考译文] ADS8699:电压的二进制转换

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/908734/ads8699-binary-conversion-to-a-voltage

器件型号:ADS8699
主题中讨论的其他器件: ADS8691

你(们)好

我们正在测试 ADS8699 ADC、我有两个问题:

我的理解是、如果使用范围等的默认值、则应能够通过发送 CS 低电平、提供时钟信号并通过 SPI 传输字节来读取+/- 3*Vref 处的 ADC 值:

字节 firstByte = SPI.transfer (B00000000);
第二字节= SPI.transfer (B00000000);
字节 thirdByte = SPI.transfer (B00000000);
字节 fourthByte = SPI.transfer (B00000000);

无需进一步设置(同样、对于 ADC 默认设置、范围=-12.288至12.288)。  

在测试中、我从该 ADC 获得输出(例如、如果我在中的模拟上读取一个5V 电源):

02:10:11.146 ->第一个字节:10101111
02:10:11.146 ->第二个字节:110010
02:10:11.146 ->第三个字节:11000000
02:10:11.146 ->第四个字节:0

位14至31应该包含输出、这至少是正确的想法吗?

2) 2)我阅读了规格表、但我仍然不确定如何使用双极范围来解释结果。 我希望有一些例子或更多的信息。 我确实看到了以下文档:

http://www.ti.com/lit/an/sbaa042a/sbaa042a.pdf?ts=1590477524201 。 我想知道 ADS8699是使用双极偏移二进制方案还是???  

谢谢、

双列直流

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

    您好、Brecky、

    您获得的转换代码接近5V 输入的代码、因为您错过了两位、此外、您还必须确保使用精密直流信号发生器而不是电源作为 ADC 的输入

     第二个字节应该有8位、但是您只显示6位、所以错过了2位。

    2、 ADC 从 SCLK 的第1个时钟开始移出转换代码、因此您的18位代码应为10101111 110010xx 11、您只需18或24个时钟即可检索转换代码。

    3. 要获得准确的结果:

    • 您的 SPI 配置应为 CPOL = 0且 CPHASE = 0、这是 ADS8699器件上不进行寄存器编程的默认模式。
    • 确保在转换时间后读取代码。
    • 确保您具有正确的电路连接和电容器去耦。
    • 确保使用的是精密信号 发生器、而不是电源作为直流输入。

    我制作并附加了 ADS8691/8695/8699的简单格式转换表、如下所示、您可以输入您获得的代码进行快速检查。

    /cfs-file/__key/communityserver-discussions-components-files/73/ADS869x_5F00_FormatConversion_5F00_DL.xlsx

    此致、

    代尔·李

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

    谢谢你。 我认为这解决了我将 ADC 输出转换为电压的问题。 但是、我会得到非常不稳定的结果。 例如、对于9V 电池(仪表上为9.12v)、我得到:

    8.99981.

    9.33984

    8.26547

    10.5646

    8.83322.
    9.36384

    由于 Covid 的工作限制、我目前没有可用的电源(或示波器)、但即使如此、我也希望能够做得更好、远优于此。  

    我有一个使用 Arduino 的简单电路、该电路具有 SPI 线路、接地线、5V 模拟电源、3.3V 数字电源、连接到试验电路板上的 ADC。 所有接地端都连接在一起、并连接到 Arduino 接地端。 RST 连接 Arduino 3.3V 数字 IO 引脚并保持高电平。

    该接线似乎与数据表的图67一致。 在 CS 线路变为低电平与结果传输之间、我有5微秒的延迟。

    Arduino 和 ADC 的数字电源之间接地的电容为0.1 μ F。 我还应该在模拟电源和 ADC 之间放置一个电容器吗?  

    我将进行实验、但您认为我应该对电路进行哪些修改以降低我认为的噪声。  

    谢谢、

    双列直流

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

    您好、 Brecky、

    首先、您是否正在使用与 ADS8699器件焊接的电路板? 如果是、请分享您的原理图。 如果不是、请告诉我您是如何连接引脚的、尤其是 REFIO 和 REFCAP、您的接线图将非常有助于理解。

    其次、数字信号布线可能涉及噪声和干扰信号、而布线不是评估16位 ADC 的好解决方案。

    若要回答您的问题、AVDD 上肯定需要0.1uF 的去耦电容器 、同时首选10uF 的去耦电容器。

    此致、

    戴尔