[技术问答]

NAno130测试 adc求解??

[复制链接]
2963|10
手机看帖
扫描二维码
随时随地手机跟帖
yytpy2008|  楼主 | 2013-8-17 20:18 | 显示全部楼层 |阅读模式
本帖最后由 yytpy2008 于 2013-8-17 20:21 编辑

对ADC的测试。如下所述,
以ADD为电压基准,测试数据如下:
/* Set the ADC operation mode as single mode */
        ADC_Init(ADC_CR_SINGLE_END, ADC_CR_ADMD_SINGEL, 0, ADC_CR_REFSEL_AVDD);
        ADC_SetChannelMask(0);
        ADC_EnableInt();
        ADC_POWER_ON;
1.jpg
非常稳定。
以内部基准为基准,测试的数据如下:
  /* Set the ADC operation mode as single mode */
        ADC_Init(ADC_CR_SINGLE_END, ADC_CR_ADMD_SINGEL, 0, ADC_CR_REFSEL_INT_REF);
        ADC_SetChannelMask(0);
        ADC_EnableInt();
        ADC_POWER_ON;
0.png
数据波动较大,介于此,请大神们帮小弟分析一下原因,以NANO130实验板为平台,
USB供电,半主机采集数据,谢谢各位。会不会是基准不稳定哦???
0.png
yanxinboy| | 2013-8-17 23:06 | 显示全部楼层
兄弟两种情况下你的VREF 怎么接的?

使用特权

评论回复
yytpy2008|  楼主 | 2013-8-18 09:07 | 显示全部楼层
硬件平台是NANO130板子,VREF外部接一个10UF的电容和104电容

使用特权

评论回复
缥缈九哥| | 2013-8-18 09:17 | 显示全部楼层
本帖最后由 缥缈九哥 于 2013-8-18 09:27 编辑

VDD本来就有纹波,就有漂移,你如果不以VDD为基准来抵消,你如何能测量出来准确的VDD分压值?比如你VDD向下漂了1%,那么电阻分压也下漂1%。那么再用同样下漂了1%的VDD做基准。测量出来互相抵消。当然ADC的值非常稳定不动了。但是你如果用不漂到1%的内部REF去测量漂的VDD分压,数值有跳动,不是正确的吗?

使用特权

评论回复
缥缈九哥| | 2013-8-18 09:32 | 显示全部楼层
本帖最后由 缥缈九哥 于 2013-8-18 09:34 编辑

如果是想看看内部基准稳定 不稳定 ,你得用一个外部的可知的准确的基准去做ADC输入。算是校准一样吧。如你用内部 基准测量一下REF3025,看看准确度如何 ?或者 再对REF3040做分压再提供给ADC输入。漂是相对的,就看看你参照物是什么,你假定了VDD是不漂了,那么只能认为内部VREF在漂了。但是VDD不可能是稳定的。它事实上是有纹波在漂的。不信你拿示波器看看VDD的交流波。

使用特权

评论回复
yytpy2008|  楼主 | 2013-8-18 09:32 | 显示全部楼层
谢谢九哥

使用特权

评论回复
ceflsh| | 2013-8-18 18:03 | 显示全部楼层
学习了,有收获。谢谢大家。

使用特权

评论回复
yytpy2008|  楼主 | 2013-9-10 17:17 | 显示全部楼层
此贴虽然已经结贴,但是后来我发现了真正的问题的所在,所以补充一下,但愿能给遇到同样的问题的人以参考:新唐内部的基准也是准的。但是我测的数据不准呢。内部基准打开稳定之后才能正常的使用。上述程序没有打开内部基准,所以测的数据会不稳定。
要使用内部基准,需加个这么一句“GCR->VREFCTL=0x00000f0f;”经测试数据稳定

使用特权

评论回复
Harvard| | 2013-9-12 00:38 | 显示全部楼层
哈哈 原来是寄存器没开没使能

使用特权

评论回复
sandou2013| | 2013-11-30 16:45 | 显示全部楼层
我现在也在玩这开发板,请问,这是用什么串口调试助手?

使用特权

评论回复
zxf0168| | 2013-11-30 16:47 | 显示全部楼层
学习了,这个帖子很有营养

使用特权

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

本版积分规则

16

主题

75

帖子

1

粉丝