目前手上一个项目需要使用ADC对一路传感器的电压做到精确采样,目标是±1mv,我目前实现的方法如下:
先对两个ADC通道进行校准,分别保存下各个通道的校准偏差。
两个ADC对内部参考电压(Vrefint)进行多次测量,取校准后的平均值,然后分别保存。
ADC1对目标传感器的外部通道进行多次测量,取校准后的平均值。
根据公式计算出目标电压(Vtarget = Ntarget * Vrefint / Nrefint)
Vtarget 是计算出的目标传感器的电压
Ntarget是第3步ADC1采样后的平均校准值
Vrefint是内部参考电压,固定是1200
Nrefint是第2步内部参考电压的采样后的平均校准值
另外ADC2通道会根据ADC1通道采样出来的目标粗电压范围进行PGA增益的调整再采样:
如果ADC1计算出来的目标电压小于800mv,那么ADC2的PGA配置为4倍模式,再采样然后/4计算出目标电压。
如果ADC1计算出来的目标电压小于200mv,那么ADC2的PGA配置为16倍模式,再采样然后/16计算出目标电压。
如果ADC1计算出来的目标电压小于50mv,那么ADC2的PGA配置为64倍模式,再采样然后/64计算出目标电压。
但是这样计算出来发现误差还是比较大,ADC1的差不多有±10mv,ADC2的也有±5mv,请问还有没有别的手段提高采样的精度?