微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > DSP学习交流 > dsp AD采样不准 怎么回事啊啊啊啊啊

dsp AD采样不准 怎么回事啊啊啊啊啊

时间:10-02 整理:3721RD 点击:
采开发板上的3.3V输出口   得出的结果图如下:


我是用四个通道采完之后计算平均值的
    RESULTA0 = AdcRegs.RESULT0>>4;
    RESULTA0 += AdcRegs.RESULT2>>4;
    RESULTA0 += AdcRegs.RESULT4>>4;
    RESULTA0 += AdcRegs.RESULT6>>4;
    RESULTA0 = RESULTA0/4*3;
最后返回的是RESULTA0,通过串口发到电脑上后用matlab画出来的图形
我在最后乘了个3,虽然并不知道是什么原理
测过一次0V,结果大概在300到600之间跳动
这次在3000上下跳动   跳动幅度这也太大了   到底怎么回事啊

采样口电压不稳

没玩过

采样电压不超过3V

电源干扰太大

您好,我现在其中一个口也出现这种情况了,采样口电压还是对的,就是采样得到的寄存器值不对!

时隔一年重新拾起DSP,还是卡在这个问题上,百度关键字“DSP AD采样不准”,第一个就是自己提的问题。晕,只能自力更生了,问题解决了,在这里记录一下,希望帮助到大家。
DSP AD采样不准有3种情况:
1、和待采样电路没共地(像我这种小白才会犯这种错误)
2、AD排序器的寄存器设置不正确,一般可以参照官方给的例子来设置(下载地址见我的CSDN资源:http://download.csdn.net/detail/popvip44/9886670)
3、DSP本身的缺陷导致需要对采样结果进行滤波
我重点说一下第三点。下图是一开始的时候,我对1V电压的采样结果(原始结果我找不到了,突然DSP又不能复现这个结果了,所以自己模拟了一副图),使用的是均值滤波的方法:


也就是说采样值一直在1.1到1.9之间跳跃,很奇怪的现象。
之后我修改了滤波算法,改为了采好几次值到缓存中之后不做平均,而是取这几次值的最小值作为这几次采样的结果,得到了下面这幅图(依旧是采集1V电压):


莫名其妙的是,即使再次改回均值滤波算法,也无法复现图1的现象了,不知道为什么。无论如何,总算是能采到正确的电压值了。

小编的现象很是奇怪,要是之前出现的那个问题,很有可能是你的均值滤波算法有问题,其实即使你选的是最小值的看结果大概是1.15V左右,与1V还是存在较大的电压差,所以,感觉还是有点问题,你可以看看你的板子的ADCLO是否连在GND上面还是悬空的?

因为买的是开发板  所以ADCLO是接了地的   1.15V是因为DSP的AD模块本身有一定误差,也有可能是输入电压本来就不是稳定的1V,我之后也做了校准

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top