STM32/STM8技术william hill官网
直播中

YYPPHH

11年用户 69经验值
擅长:控制/MCU
私信 关注
[问答]

AD转换0~3.3V 测较低电压数值会漂移,AD值,电压数值波动

我用STM32F103ZE :两路ADC(DMA),PA0,PA1接下拉电阻后仍有电压, 约1.7V-2.1V
有时候是正确的,有时候又不正确,怎么办?
当输入测量电压低于该电压时,AD值就会波动如下图(PA0输入0.99V)

测量0.99V电压,漂移出1.7V

当PA1输入0V时(10K下拉电阻接地)AD转换值波动如下图
测量0V

回帖(9)

差点迟到

2015-8-6 09:56:24

最佳答案

我也做过相似的项目,AD电压不稳可能有:
1、电源纹波太大,前日做的一项目发现电压不稳,在AD输入引脚加了几个104的电容虽然有所改善但是还是有抖动,最后发现时纹波太大500MV,什么概念电压输入0~3.3V。这干扰有多大。最后在电源和地之间加了两个1000uf大电容才大大改善,但是还是有点不稳
2、软件加滤波,建议楼主把采回的电压数据进行排序,取中间的稳定值才非常稳
举报

差点迟到

2015-8-6 10:47:32
你的电压好像有脉冲干扰,先查威廉希尔官方网站 纹波,后加软件滤波
举报

YYPPHH

2015-8-6 10:52:14
引用: liberate301 发表于 2015-8-6 10:46
我也做过相似的项目,AD电压不稳可能有:
1、电源纹波太大,前日做的一项目发现电压不稳,在AD输入引脚加了几个104的电容虽然有所改善但是还是有抖动,最后发现时纹波太大500MV,什么概念电压输入0~3.3V。这干扰有多大。最后在电源和地之间加了两个1000uf大电容才大大改善,但是还是有点不稳
2、软件加滤波,建议楼主把采回 ...

噢噢 谢谢!我尝试一下看看结果怎样
举报

lewis_y

2015-8-6 12:06:20
我想问一下 楼主,STM32采集AD的时候一直有一个初值怎么去掉
举报

YYPPHH

2015-8-6 16:15:15
引用: lewis_y 发表于 2015-8-6 12:06
我想问一下 楼主,STM32采集AD的时候一直有一个初值怎么去掉

没有遇到这样的情况,你检查一下是不是配置问题?
举报

王强123

2015-8-6 16:34:36
最好采用传感器,低电压踩出来会有噪声的,
举报

王强123

2015-8-6 16:36:54
有噪声干扰,可以拿测量威廉希尔官方网站 或者是霍尔传感器
举报

YYPPHH

2015-8-8 17:28:50
1)谢谢各位大神指点,漂移的问题基本解决,将ADC改成初始化的时候启动,将      ADC_RegularChannelConfig(ADC1, ADC_Channel_0, 1, ADC_SampleTime_55Cycles5);   
    ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 2, ADC_SampleTime_55Cycles5 );  
    采样时间从239.5改成55.5,然后测0.几伏电压就不漂移了
2)现在的问题是测较低电压(低于2V)的时候误差比较小,约0.1V;但是测2点几伏,3点几伏的时候,所有数据都比万用表测得数据小0.2V左右,该怎么处理呢?求平均的话结果也还是会比真实值低0.2V吧?
举报

差点迟到

2015-8-10 11:35:45
引用: YPHFree 发表于 2015-8-8 17:28
1)谢谢各位大神指点,漂移的问题基本解决,将ADC改成初始化的时候启动,将      ADC_RegularChannelConfig(ADC1, ADC_Channel_0, 1, ADC_SampleTime_55Cycles5);   
    ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 2, ADC_SampleTime_55Cycles5 );  
    采样时间从239.5改成55.5,然后测0.几伏电压就不漂移了

把采集的数据直接发串口显示,分析采回的数据,如果采回的数据比较平稳可以采用平均,但是如果有个别波动比较大,不适合求平均!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分