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.
工具与软件:
您好!
我们正在使用 ADS1282、并且想估算基线(本底噪声)以及输出数据存在问题。
硬接线配置:
ADC 基准设置为5V DC
AIN1+、AIN1-通过121R 连接到2.5V 基准电压
ADC 时钟设置为4.096MHZ
软件配置
CONFIG 0寄存器配置为 0xD9
D7 1 连续导通同步模式[Continuous SYNC mode]
D6 1 保留
D5:D3 001 64KHZ 数据速率 表6第18页
D2 0 线性相位
D1: 选择了 d0 01 Sinc 滤波器
其他寄存器保持默认状态
当读取32位数据时,我们期望数据接近0 ,根据表13第26页的数据表,
但本底噪声相对较大、请参阅随附的示波器图。 黄色线是 ADC RDY;蓝色 SPI CLK;品红色是来自 ADC 的 SPI 数据输出。
您能告诉我们可能会出什么问题吗?
谢谢!
Iouri
您好 Iouri:
我想你的时间是不正确的。 在下一个/DRDY 变为低电平之前、您正在读取少于4个 CLK 周期的最后一个数据 LSB、这将损坏下一个读数。
您要以64ksps 的速率运行、并且使用4.096MHz 的 CLK 时最大 SCLK 为2.048MHz、因此您没有足够的时间读取32b、并满足下一个/DRDY 下降沿之前的4个 T-CLK 周期。 在这种情况下、我建议您仅读取24b (在这些更高的数据速率下绰绰有余)。
该过程应如下所示:
在 SCLK 空闲为低电平时、主机 MCU 会监测/DRDY 上的下降沿(通过轮询或中断)。
2. 在/DRDY 变为低电平后、延迟100ns 或更长、然后发送24个 SCLK (f-SCLK=SCLK)、主机在2.048MHz 上升沿捕获数据。 下降沿将下一位移出 ADC。
3. 捕获24b 字后、将 SCLK 置为低电平、直到/DRDY 的下一个下降沿、然后重复步骤1-3。
此致、
Keith Nicholas
精密 ADC 应用
尊敬的 Keith:
再次感谢您的详细答复。 我已经修改了代码、以实现 ADC RDY 的归档边沿和 SCK 上升之间的24位和100nS 延迟。
请查看以下示波器图和注释。
若要进行 ADC 计数至电压转换、请使用以下公式:
您好 Iouri:
由于您使用的是 sinc 滤波器、所以24b 代码除以2。
PGA = 1时:
= 0.5 * 5V /(2^22 - 1)* ;表示24b 有符号整数
是二进制补码的十进制等效值(有符号整数)。
此致、
Keith
尊敬的 Keith:
我更新了计算公式、结果看起来不正确。
我向 AIN0通道施加了250mV 差分正弦波250Hz V offset = 2.5V 直流、我从0获得相对较大的直流偏置、并且振幅看起来不正确。 请参阅以下内容
输入级原理图:
请检查并建议是否有什么东西看起来不正确。
感谢您的支持。
此致、
Iouri
您好 Iouri:
我建议使用示波器并相对于系统接地测量每个输入。
我不确定根据您提供的数据会发生什么情况、但我们需要确认输入信号是否正确。
此致、
Keith
尊敬的 Keith:
谢谢你,你的答复。 我确实检查了每个输入的直流偏置、它是2.5V 直流;并且每个输入的交流分量为250mV 峰峰值(输入之间的180度相移)
此致、
Iouri
您好 Iouri:
另外、还请直接在 ADC 引脚 AN1-和 AN1+上进行测量、以确保电压正确。 在没有输入信号的情况下、使用 DMM 测量 AN1-和 AN1+直流电平(相对于接地和差分、(AN1+)-(AN1-))、以确认接近0V。
此外、在没有任何交流输入信号的情况下、记录几个读数以确认直流失调电压接近0V。 100k Ω 电阻器和1N4148二极管泄漏可能会导致直流偏移。
最后、请 在文本文件中包含 ADS1282的原始输出代码。 这样、我可以确认您使用正确的数学运算转换为电压。
谢谢!
Keith
尊敬的 Keith:
感谢您的重播。 我确实测量了 C17引脚到 GND 的电压(请参阅上面的原理图、C17直接连接到 ADC)。
使用 DMM 完成有交流信号和无交流信号的测量。 在这两种情况下、我都会 在两个输入端获得2.481V 直流电。
还请查找原始(无交流信号数据)数据、这是32位数据 ADC 数据 D23:D0映射到 D31:D8和 D7:0、用0填充。
我这样做的原因是在 MSB 位置保留符号位,这样可以很容易地使用负数操作。
此致、
Iouri
您好 Iouri:
您提供的数据似乎存在大约20mV 的偏移。 这可能是由保护二极管流过100k Ω 偏置电阻器的漏电流造成的。
作为另一项测试、请在没有任何器件连接到电容器输入的情况下将3.5V 输入施加到正输入(R25/D6/D8节点)。 这应该为 ADC 输入(An1+=3.5V、An1-=2.5V)提供1V 差分偏置并记录几个值。 输入代码应显示为接近1V。
此外、我使用以下表达式计算了输入电压。
VIN =代码*2.5/(2^30-1)
Vin = 8343040*2.5/(2^30-1)= 0.0194V。
此致、
Keith
尊敬的 Keith:
非常感谢您的答复
1.向 AIN1+施加3.5V 直流电;
2.用 DMM 差分电压994mV 测量。
3.收集和绘制数据似乎是可以的;
请参阅以下内容
应用交流信号并获得错误振幅值时、我仍然遇到问题、此处有任何建议
感谢您的支持。
此致、
Iouri
您好 Iouri:
这看起来是正确的。 此时、函数发生器一定不能按预期工作。
我使用与您的配置非常相似的设置配置了 ADS1282EVM、并且没有发现任何问题。 请注意、我没有对信号发生器进行交流耦合;它是直接连接的差动输出(200mVpp)、共模电压为2.5V。
也许可以提供一个连接图、显示如何将函数发生器连接到 ADC 输入。
此致、
Keith
尊敬的 Keith:
感谢您的答复。 我们使用的是 Rigol DG992函数发生器。 发生器有2个通道输出、能够同步通道来生成差分信号。 发生器 CH1直接连接到 ADC_N (C15)和 GND;CH2连接到 GND 和 ADC_P (C16)。
我做了一些更多的测量,请见波纹。
评论不多
两个通道上的直流偏置均设置为2.5V。
使用示波器在 C17上完成振幅测量
请回顾并评论
此致、
Iouri
100Hz 680mV 差分电压
250Hz 680mV
660mV
您好 Iouri:
由于您可以在每个发生器输出通道上设置2.5V 偏移、因此我建议连接电容器 C15 / C16的另一侧以消除交流耦合。 这将与我在 EVM 上进行的测试非常相似。
ADC 也可能损坏、需要更换。
此致、
Keith
尊敬的 Keith:
感谢您的答复。
我已移除 C15、C16、并将来自发生器(100 Hz 680mV 差分;每个通道上的2.5V 直流偏置)的信号 直接施加到 R23、R25、结果如下:
请注意、以下提及的振幅是 C17上的测量值:
更改为1100mV
感谢您的大力支持!!!
此致、
Iouri
您好 Iouri:
我目前没有任何其他建议。 您似乎获得了良好的信号、但缩放不正确。 我会建议更换 ADS1282、但1V 的直流测量值是正确的值。
此致、
Keith
尊敬的 Keith:
感谢您的答复。 让我尝试得到另一个板,我会在几天内建议
此致、
Iouri
尊敬的 Iouri:
还可以
Keith
尊敬的 Keith:
看起来我的问题与振幅相关、是连接到引脚 CAP+和 CAP-的电容器的值、我认为我使用的值似乎过高、 请参阅以下屏幕截图。 我将其更改为10nF 并移除 R33和 R28、这有助于频率响应。
您能对此发表评论吗? 此外、如果有任何与高/低截止频率(-3dB)相关的规格?
请在您方便时尽早告知。
感谢您的支持。
此致、
Iouri
您好 Iouri:
是的、100nF 将影响 ADC 输入的带宽、而电阻器将进一步衰减信号。 100nF 差分电容器将产生2.6kHz 的3dB 带宽。 如果您使用的电容值较高、这肯定会在250Hz 时衰减信号。
此致、
Keith
尊敬的 Keith:
我想我现在很好。 感谢您的支持
此致、
Iouri