mrf245 发表于 2024-6-19 09:29:11

如何提升nRF52832内部ADC采样稳定性

最近调试一个nRF52832官方开发板,使用芯片内部ADC采样外部模拟电压,发现抖动较大。
52832内部基准使用3.6V,采一个外部由REF3225产生的2.5V电压,该电压同步由一个6位半万用表检测。
2.5V电压实际输出为2.4990X,用52832采样结果在2.507-2.525之间随机性抖动。经过计算,抖动量为20LSB(ADC的12位用满)
测了52832的供电3.3V电压,为3.295X,在0.0001V档位抖动,尝试给电源加1000uF电容滤波,无效。3.3V纹波小于20mV。
请问这个抖动量正常吗?有没有办法提升ADC采样稳定性?

智涅 发表于 2024-6-19 09:36:42

20LSB太大了不正常,程序没有跑RF或者蓝牙吧?通过串口打印显示?

mrf245 发表于 2024-6-19 09:38:26

智涅 发表于 2024-6-19 09:36
20LSB太大了不正常,程序没有跑RF或者蓝牙吧?通过串口打印显示?
(引用自2楼)

没跑蓝牙,外挂了一个小液晶屏做采样值显示

智涅 发表于 2024-6-19 10:02:50

这个芯片内部参考电压3.6,应该不对吧,应该是1.2然后你用了1/3 scale吧(我记得51822是这样的)
另外你3.3v用什么供?按道理开发板有LDO,然后你应该供LDO前面的电源,应该是5v或者更高吧

mrf245 发表于 2024-6-19 10:25:57

智涅 发表于 2024-6-19 10:02
这个芯片内部参考电压3.6,应该不对吧,应该是1.2然后你用了1/3 scale吧(我记得51822是这样的)
另外你3.3 ...
(引用自4楼)

基准是内部0.6V,使用6倍增益,等效于3.6V。3.3VCC是板上一个300mA的LDO产生,LDO输出供应到SOC电源有一个肖特基二极管降压,现在管子已经被短路,3.3V直接供到SOC芯片。
刚才用自己做的一个52832板子(上面器件比较少),用串口发送数据给PC,采样稳定性有所提高,现在跳动平均9个LSB(有时瞬间到13LSB)

Landmark 发表于 2024-6-19 10:36:28

楼主对这个ADC的精度很在意吗?我认为它们的精度比普通MCU会差不少。

mrf245 发表于 2024-6-19 10:41:04

Landmark 发表于 2024-6-19 10:36
楼主对这个ADC的精度很在意吗?我认为它们的精度比普通MCU会差不少。
(引用自6楼)

在意,友商用这个片子做传感器采样(按招标要求做),可以做到0.5%以内精度,按目前手头ADC自身采样随机抖动刚好0.5%,如果加上前端传感器不确定度,会超过0.5%。

qwe2231695 发表于 2024-6-19 10:50:27

VDDA 加2.2uf ,100nf,10nf 3级电容。另外转换速度设置为能够满足的最慢挡位。 有条件的加运放跟随。

mrf245 发表于 2024-6-19 11:49:22

刚才开启过采样,14BIT,16倍过采样,ADC读数稳定性又提升了一些,现在抖动大约5-6LSB(12位)。按原始12位采样精度计算,抖动误差约为0.14%

mrf245 发表于 2024-6-19 11:53:07

qwe2231695 发表于 2024-6-19 10:50
VDDA 加2.2uf ,100nf,10nf 3级电容。另外转换速度设置为能够满足的最慢挡位。 有条件的加运放跟随。 ...
(引用自8楼)

降速没解决问题。VCC只有一组脚,外接3类滤波电容已经安排上,对采样没有改善

智涅 发表于 2024-6-19 11:56:19

上电池供电看一看,断开所有跟交流相关的

Arm2048 发表于 2024-6-19 12:12:03

可能是ADC软件的问题,看手册ADC相关部分,采样时间间隔,单次与周期采样时间;ADC内部电容要充满2.5V采样才准,如果才充到2.3、2.4V就读取结果,当然不准。

如果单次差很大,过采样的改善有限。

qwe2231695 发表于 2024-6-19 13:37:59

1. 降低3.3V的纹波,关闭各种外设进行排查。

2. 看是不是有别的io口在吞吐电流,关闭,或者给他们加电阻。

lb0857 发表于 2024-6-19 17:52:01

电源纹波如有外接基准电压选择好一点的,
先从二方面优化
页: [1]
查看完整版本: 如何提升nRF52832内部ADC采样稳定性