打印
[STM32F3]

STM32F303 AD采集 中间值

[复制链接]
3591|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
想请教一个关于STM32F303的AD使用的问题,我在用303采样5K锯齿波信号时,在满量程的中间值附近会出现失真,这里的信号是用另外一个303的DA生成的,直接接到AD采样的引脚上,中间没有滤波,采到以后把整个数据左移了4位,变为16位,原始的12位信号也存在一样的现象(出现在2048附近);不知道各位有没有遇到这种现象,如果有技术支持,麻烦给看下是不是片子的问题,这个现象我试了很多303都存在;

原始信号.png (18.74 KB )

示波器观察实际信号

示波器观察实际信号

采到信号.png (20.91 KB )

303的AD采集到信号

303的AD采集到信号
沙发
yiyigirl2014| | 2015-12-28 12:21 | 只看该作者
你用示波器看看那个位置是不是有问题,如果是,说明ADC是没有问题的是信号的问题。

使用特权

评论回复
板凳
872190600dxx|  楼主 | 2015-12-28 13:36 | 只看该作者
我可以确定不是信号的问题,开始我用303的DA生成信号就存在这个问题,后来为了排除这种可能,我用信号发生器产生信号来测也存在这个问题。

使用特权

评论回复
地板
huangcunxiake| | 2015-12-28 15:51 | 只看该作者
输出信号,和接收信号之间有什么技术隔离吗?比如使用跟随器。

使用特权

评论回复
5
huangcunxiake| | 2015-12-28 15:52 | 只看该作者
感觉在那个位置电路可能构成了一个带阻滤波器。

使用特权

评论回复
6
玛尼玛尼哄| | 2015-12-28 17:48 | 只看该作者
横线是采样次数,纵线是采样值,是吧?为何采样到33000时候出了问题,楼主可以单独对那个区域采样试试看。

使用特权

评论回复
7
xmshao| | 2015-12-28 17:52 | 只看该作者
STM32F3系列的模拟外设这块 真是其优势和卖点之一。

楼主用具体哪个型号?用的哪个AD,F3系列里的AD有两种。

一种是积分型,一种是sigma/delta型。楼主应该是用得前者,因为后者可以达到16位分辨率。


使用特权

评论回复
8
android2| | 2015-12-28 19:37 | 只看该作者
会不会是有什么干扰信号产生了

使用特权

评论回复
9
872190600dxx|  楼主 | 2015-12-29 10:26 | 只看该作者
huangcunxiake 发表于 2015-12-28 15:51
输出信号,和接收信号之间有什么技术隔离吗?比如使用跟随器。

现在图片里的信号是没有任何中间隔离的,之前加了一个RC低通滤波,电阻100欧姆,电容10nf,也会有这个问题

使用特权

评论回复
10
872190600dxx|  楼主 | 2015-12-29 10:29 | 只看该作者
玛尼玛尼哄 发表于 2015-12-28 17:48
横线是采样次数,纵线是采样值,是吧?为何采样到33000时候出了问题,楼主可以单独对那个区域采样试试看。 ...

横线为采样点序号,总线是采样值,我现在就是把信号固定到问题电压附近±50mV观察的。。。

使用特权

评论回复
11
872190600dxx|  楼主 | 2015-12-29 10:31 | 只看该作者
xmshao 发表于 2015-12-28 17:52
STM32F3系列的模拟外设这块 真是其优势和卖点之一。

楼主用具体哪个型号?用的哪个AD,F3系列里的AD有两种 ...

型号是STM32F303,STM32自带AD有16位的???没用过唉,我这个是12位的,16位的数据是我左移4位的结果;

使用特权

评论回复
12
xmshao| | 2015-12-29 11:21 | 只看该作者
呵呵 STM32F373系列就带 16位 sigma delta 型的ADC.

使用特权

评论回复
13
mmuuss586| | 2015-12-29 11:26 | 只看该作者
接直流信号(信号纹波要小),多测试几个点看看;

使用特权

评论回复
14
872190600dxx|  楼主 | 2015-12-29 11:35 | 只看该作者
xmshao 发表于 2015-12-29 11:21
呵呵 STM32F373系列就带 16位 sigma delta 型的ADC.

恩,这是之前别人选的303,我上面说的这个问题打一开始用就有,之前都是避开这个电压值。我现在接手负责解决这个问题,目前没有思路了。

使用特权

评论回复
15
872190600dxx|  楼主 | 2015-12-29 11:39 | 只看该作者
huangcunxiake 发表于 2015-12-28 15:52
感觉在那个位置电路可能构成了一个带阻滤波器。

我上面给出的信号是5K的信号,你觉得这个带阻滤波器的阻带范围是多少呢,正弦信号我也试过,同样是在32768值出出现这种失真。

使用特权

评论回复
16
872190600dxx|  楼主 | 2015-12-29 11:41 | 只看该作者
android2 发表于 2015-12-28 19:37
会不会是有什么干扰信号产生了

有可能,但是在固定电压值(中间值)出现的干扰会是什么干扰呢?我实在想不到那种干扰会有这种现象,望指教。

使用特权

评论回复
17
xmshao| | 2015-12-29 12:04 | 只看该作者
872190600dxx 发表于 2015-12-29 10:31
型号是STM32F303,STM32自带AD有16位的???没用过唉,我这个是12位的,16位的数据是我左移4位的结果; ...

这个地方有点意思。

你电源电压多少?REF又是多少?电压是否稳定?

还有,如果你不做16位变换的数据会是怎样的?即直接看12位AD值。

使用特权

评论回复
18
872190600dxx|  楼主 | 2015-12-29 16:46 | 只看该作者
xmshao 发表于 2015-12-29 12:04
这个地方有点意思。

你电源电压多少?REF又是多少?电压是否稳定?

不做左移4位处理的数据我也看过,现象一样,就是问题出现在2048附近,还是一半满量程电压位置,参考电压我现在是3.3V,至于是否稳定的话,我之前都是避开这个点,就是让信号在2048以上使用,一直没有问题,示波器看的话,这个参考电压纹波在50mV以内的。

使用特权

评论回复
19
872190600dxx|  楼主 | 2015-12-29 16:52 | 只看该作者
补一张测得正弦信号,没有进行12位扩16位的采集结果

2.bmp (424.4 KB )

问题区域放大

问题区域放大

1.bmp (43.72 KB )

采集到12位原始信号

采集到12位原始信号

使用特权

评论回复
20
EAMCU| | 2015-12-29 17:01 | 只看该作者
测试了参考电压40%-65%的范围,在24mV的分辨率基础上,未发现问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

11

帖子

0

粉丝