HII、
我使用的是 ADS8694、
当我要将此 IC 与 Arduino 进行通信时、会发生通信
当我要获取数据时,我无法获取正确的数据。 当我为 CHANNEL 0提供1V 作为输入时、将获得以下数据
随附的文件为 Arduino 代码。
e2e.ti.com/.../7725.New-Text-Document.txt
谢谢、此致、
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.
HII、
我使用的是 ADS8694、
当我要将此 IC 与 Arduino 进行通信时、会发生通信
当我要获取数据时,我无法获取正确的数据。 当我为 CHANNEL 0提供1V 作为输入时、将获得以下数据
随附的文件为 Arduino 代码。
e2e.ti.com/.../7725.New-Text-Document.txt
谢谢、此致、
您好、daggupati、
如果您的 ADC 输入配置为双极 范围、则您得到的代码小于20000h、即0V 输入。 您能告诉我有关您的连接的更多信息吗?
使用示波器捕获的时序图(SCLK、/CS、SDO、SDI)将非常有助于解决该问题。
此致、
戴尔
您好、daggupati、
您的 ADC 在基准和电源上具有必要的电容器、这是很好的。 但是、强烈建议在 ADS8694数据表中使用单个专用接地层、请检查数据表中的布局指南。 您在 J8上使用的跳线和布局不当可能会涉及更多噪声和干扰信号。
此外、AIN_0GND 连接到不同于 ADC AGND 和 DGND 引脚接地的接地端。 我建议您将此接地修改为同一接地、同时将1V 信号的接地连接到此接地。 如果问题仍然存在、则可能是由数字计时引起的。 但是、您应该按照我的建议保留此修改。
您的1V 输入信号是什么? 它是由精密信号发生器创建的吗?
Arduino CPU 上的 SPI 的 CPOL 和 CPHA 配置是什么? 您是否对 ADC 的内部寄存器进行了编程、以匹配模式? 请提供使用示波器捕获的时序图(SCLK、/CS、SDO、SDI)。
此致、
戴尔
HII、
感谢您的回答、
在原理图中,我对 J8连接器进行了排序,但跳线和电容 C11未安装。
AIN_0P 点的输入端、从外部电源提供1V 电压。
请仔细阅读以下代码。 请告诉我配置 ADS8694所需的代码中的任何更改。
e2e.ti.com/.../ADS8694_5F00_code.txt
谢谢、此致、
您好、daggupati、
正如我说过的、接地连接是最大的问题、下次您应该使用实心接地来设计您的电路板。 请按照我的建议修改您的现有电路板以再次进行测试:
将 AIN_0GND 连接到与 ADC AGND 和 DGND 引脚的接地相同的接地端。
使用精密直流信号源而不是电源作为输入信号、因为电源可能具有很高的噪声。
确保 SPI 配置的 CPOL = 0、CPHA = 1。 您在代码中使用的是模式1、但不同的控制器可能对 SPI 模式有不同的定义、因此请进行验证。
此外、控制器应在 SCLK 的下降沿读取数据、并且控制器应能够在 SCLK 下降沿之后的10ns 内检索数据、请参阅 ADS8694数据表第10页中的 thk_CKDO 参数。 您的控制器(Arduino)恐怕无法满足此要求。 请尝试其他快速控制器(如果有)。
此致、
戴尔