打印

AD精度不高?

[复制链接]
1825|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
afcmiao|  楼主 | 2011-12-21 19:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在捣鼓SH79F165的adc,感觉配置也完全对了,但得到的数据只有高8位是稳定的,求高手指导啊!!我把自己写的配置部分,贴到下面来。电路跟datasheet的一样。
static void __Init_Adc(void)
{
        REGCON = BIT0;
     /*REGEN=1:开启电压稳压器*/

        PGAM  &= ~BIT7;
/*禁止PGA功能,增益为1*/

ADCON &= ~BIT6;
/*ADCIF=0:完成转化标志清零*/

ADCON &= ~BIT4;
/*REFC=0:选择内部基准电压*/

        EADC = 1;
/*开启AD中断*/

ADT    = 0XB0;
/*Ad转化频率为25Hz*/


ADRAND = BIT7;
/*RANDEN=1:允许随机时钟功能*/

ADCH   = BIT7 + BIT6 + BIT5 + BIT3 + BIT0; //VREF=0.8V

ADCON |= BIT7;
/*ADON=1:ad开启*/

}
我用了测试了两种情况,出现的问题都是一样的;
SCH[2:0]=100,即测VDD电压;测得VREF=1.075V;VDDR=2.710V;VDD=3.3左右V;
SCH[2:0]=000,即通过AIN0,测的AIN0+,AIN0-之差为0.591,VIN+为1.499,VIN-为0.912;VREF=1.075;
GND和AGND在电源处是直接连在一起的,但在MCU这里测的两者之差有7.6mV。
就是不知道哪里出了问题,导致数据只有高8位才是稳定的。
沙发
forrest11| | 2011-12-21 19:43 | 只看该作者
数据只有8位稳定,可能原因很多,但主要原因还是你的待测信号不稳定,或者你的参考电压不稳定。

使用特权

评论回复
板凳
afcmiao|  楼主 | 2011-12-21 21:03 | 只看该作者
在SCH[2:0]=100,即测VDD电压这种情况,参考电压和待测信号都是MCU内部的,应该比较稳定吧,而且我用万用表看电源电压是不波动的

使用特权

评论回复
地板
afcmiao|  楼主 | 2011-12-21 21:04 | 只看该作者
数据只有8位稳定,可能原因很多,但主要原因还是你的待测信号不稳定,或者你的参考电压不稳定。
forrest11 发表于 2011-12-21 19:43

在SCH[2:0]=100,即测VDD电压这种情况,参考电压和待测信号都是MCU内部的,应该比较稳定吧,而且我用万用表看电源电压是不波动的

使用特权

评论回复
5
forrest11| | 2011-12-22 08:24 | 只看该作者
参考电压用内部的,可能会有问题,还是要看你布板的情况,对Vref是否有效去耦,万用表看是不能代表什么的。示波器可能好点。你这个情况用示波器可以看到电源纹波的。

使用特权

评论回复
6
forrest11| | 2011-12-22 08:25 | 只看该作者
最近在捣鼓SH79F165的adc,感觉配置也完全对了,但得到的数据只有高8位是稳定的,求高手指导啊!!我把自己写的配置部分,贴到下面来。电路跟datasheet的一样。
static void __Init_Adc(void)
{
        REGCON = BI ...
afcmiao 发表于 2011-12-21 19:33

GND和AGND有7mv的压差,感觉不对啊,你正确使用了万用表吗?(万用表较零了吗?)

使用特权

评论回复
7
xwj| | 2011-12-22 08:32 | 只看该作者
应该不是使用万用表的问题,而是布线不对产生的地弹

使用特权

评论回复
8
ZFX491669347| | 2011-12-22 19:20 | 只看该作者
看看是不是C变量定义的类型问题

使用特权

评论回复
9
ZFX491669347| | 2011-12-22 19:20 | 只看该作者
看看是不是C变量定义的类型问题

使用特权

评论回复
10
ZFX491669347| | 2011-12-22 19:20 | 只看该作者
看看是不是C变量定义的类型问题

使用特权

评论回复
11
ZFX491669347| | 2011-12-22 19:21 | 只看该作者
看看是不是C变量定义的类型问题

使用特权

评论回复
12
ZFX491669347| | 2011-12-22 19:21 | 只看该作者
看看是不是C变量定义的类型问题

使用特权

评论回复
13
ZFX491669347| | 2011-12-22 19:22 | 只看该作者
看看可是C变量定义问题

使用特权

评论回复
14
parkdom| | 2011-12-23 15:42 | 只看该作者
:)

使用特权

评论回复
15
angle1th| | 2012-5-8 16:54 | 只看该作者
:)

使用特权

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

本版积分规则

0

主题

3

帖子

1

粉丝