你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32的AD究竟能达到多少LSB?

[复制链接]
逍遥李 提问时间:2015-10-17 11:12 /
悬赏10ST金币未解决
本帖最后由 逍遥李 于 2015-10-18 19:00 编辑

如题,我想知道下面我测量的纽扣电池电压和精密电阻对Nucleo板上3.3V分压 精度上是否正常?或者我接法有错误?
测试一共做了两组,就是简单的AD采样,采样方式使用DMA连续采样,采样值不做处理直接经串口输出,输出频率≤100HZ,板子使用Nucleo,芯片stm32f303,下面是实验过程:
试验一:采样纽扣电池电压,连接方式和数据结果如图:
2015-10-17_105930.png
连接很简单,如上图所示。
DMA采样纽扣3V电池问题.jpg
上面是连续输出1120个采样点,纵轴是采样的纽扣电池电压对应的AD转换结果,横轴代表采样点下标,另外计算得到如下参数:
最大值:3915;最小值:3905;均值:3909.9;中位数:3909;标准差:2.3493;
疑问1:最大值和最小值相差10,这个数值是否正常?是不是哪里有干扰我没考虑到?
DMA采样纽扣3V电池问题2.jpg
这幅图是数据分布柱状图,纵轴代表采样结果中对应数值出现的次数即频次,横轴代表采样值;
疑问2:为什么不服从正态分布?为什么有两个波峰?
试验二:采样板子自身3.3V经精密电阻分压数值(采样过程中精密电阻不调节),连接方式和数据结果如图:

2015-10-17_105951.png
连接方式很简单,如图所示。
DMA采样精密电阻分压后的自身3.3V.jpg

上面是连续输出18456个采样点,纵轴是精密电阻分得电压对应的AD转换结果,横轴代表采样点下标,另外计算得到如下参数:
最大值:1031;最小值:984;均值:1005.3;中位数:1005;标准差:3.081;
疑问3:最大最小值相差47,除去几个尖点,其数值在纵向宽度超过10,DMA采样数据需要软件滤波才能输出使用?请高手指点!


DMA采样精密电阻分压后的自身3.3V_2.jpg

这幅图是数据分布柱状图,纵轴代表采样结果中对应数值出现的次数即频次,横轴代表采样值;

以上手我做的两个关于AD采样的试验,想听听大家的看法,主要是两个方面:
1、AD采样12bit精度能用的精度是多少bit?实际用的时候都是自己再做软件滤波吗?
2、我的电路连接上是否哪里有问题?误差来源大家认为都是哪里?
请不吝赐教,非常感谢!



收藏 1 评论29 发布时间:2015-10-17 11:12

举报

29个回答
逍遥李 回答时间:2015-10-17 11:14:20
本帖最后由 逍遥李 于 2015-10-18 19:30 编辑

今天特意去买了几片TL431,使用TL431的2.495V参考源电压作为测量目标,对其进行测量,测量数据图如下所示:

TL431单独采样_纽扣供电.jpg
图上各参数定义参考原帖……这次采样了66125个点
TL431单独采样_纽扣供电2.jpg


感谢各位坛友的回答,就目前情况来看,使用TL431也并没有什么用,看来是需要进行滤波处理了。
pwdzsj 回答时间:2015-10-17 11:43:11
可以用一个稳定的电源来测试哦,艾德克斯电源就行哦
风子 回答时间:2015-10-17 11:51:14
纽扣电池输出的本身就不是绝对的稳压直流电源,会有一定的波动,通过电阻分压的,即使是精密电阻,得到的电压精度也没那么高,12位ADC精度理论上能达到1/4096,3.3v参考电压就是0.8mv,实际嘛当然不会这么高,有几mv偏差是正常的。电路上ADC采样端可以接个电容减小电压波动
orima 回答时间:2015-10-17 11:52:00
是不是插线接触不良造成的干扰?毕竟不是直接焊接。

我不是高手,只是兴趣楼主思考问题的方式。

期待看到工程文件。。。
lkl0305 回答时间:2015-10-17 15:23:05
学习了
湛无双 回答时间:2015-10-17 16:08:05
导线自身存在的干扰呢?杜邦线自身的接触干扰,都是干扰,如果想要测试的准确,就应该以一个恒定的稳压电源来做AD的外部输入。
cxtarm 回答时间:2015-10-17 16:22:24
片内12位ADC通常达到10位的精度是没有问题的,要想达到11位以上对电路的设计就有些要求了。对于楼主采集的实验,结果应该是正常的。偏差也在范围内。至于误差的原因,有以下:1、参考源,不知道楼主使用的是哪个参考源,内部的还是外部的;2、信号源是否稳定,根据楼上几位所说,纽扣电池的电压并不是稳定;3、电路板设计,我没有楼主手上的开发板,不知道这个开发板对模拟部分是怎么处理的,通常的开发板对模拟部分都是没有十分下功夫的。
另外,如果对采样精度要求比较高,DMA出来的数据最好是做下滤波处理,这样既能提高精度,如果需要通过过采样还能提高分辨率
peter001 回答时间:2015-10-18 01:19:44
振荡器问题可能导致频谱双峰
逍遥李 回答时间:2015-10-18 19:08:22
pwdzsj 发表于 2015-10-17 11:43
可以用一个稳定的电源来测试哦,艾德克斯电源就行哦

手里没这高端玩意儿啊~
逍遥李 回答时间:2015-10-18 19:10:09
风子 发表于 2015-10-17 11:51
纽扣电池输出的本身就不是绝对的稳压直流电源,会有一定的波动,通过电阻分压的,即使是精密电阻,得到的电 ...

我以为纽扣电池电压会比较稳定的,原来如此,另外就是,精密电阻虽然不够精密,但是不管其误差多少我在采集过程中并不进行调节,我只是看结果数据稳定性,实际偏差已经超过10mv了
逍遥李 回答时间:2015-10-18 19:10:53
超級稻草人 发表于 2015-10-17 11:52
是不是插线接触不良造成的干扰?毕竟不是直接焊接。

我不是高手,只是兴趣楼主思考问题的方式。

工程文件非常简单的,就是DMA+ADC多通道连续采样,等我整理下发过来!
逍遥李 回答时间:2015-10-18 19:12:33
湛无双 发表于 2015-10-17 16:08
导线自身存在的干扰呢?杜邦线自身的接触干扰,都是干扰,如果想要测试的准确,就应该以一个恒定的稳压电源 ...

这个导线干扰我确实没有考虑,但是我频率并不高呀,100HZ输出,DMA采样倒是很高,不过我也试过不适用DMA方式,结果也是这个样子
逍遥李 回答时间:2015-10-18 19:13:24
湛无双 发表于 2015-10-17 16:08
导线自身存在的干扰呢?杜邦线自身的接触干扰,都是干扰,如果想要测试的准确,就应该以一个恒定的稳压电源 ...

做AD的外部输入是什么意思?AD的参考电压吗?但是stm32的64脚芯片好像没有可以接外部参考源的片
逍遥李 回答时间:2015-10-18 19:16:24
cxtarm 发表于 2015-10-17 16:22
片内12位ADC通常达到10位的精度是没有问题的,要想达到11位以上对电路的设计就有些要求了。对于楼主采集的 ...

1、当前我手里的片子没有外部参考用的,都是用的内部3.3V参考源;
2、我本以为纽扣电池电压会比较稳定,今天又特意去买了TL431,对其2.5V参考电压进行测量;数据见二楼。
3、目前对我可行的方法就是滤波处理了,感谢大神的详细讲解!非常感谢!
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版