打印
[其它应用]

SH79F6488的ADC测量值与理论计算值不一致

[复制链接]
1375|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangpe|  楼主 | 2018-3-12 15:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ADC, dc, AD
SH79F6488的ADC测量值与理论计算值不一致
沙发
wangzsa| | 2018-3-12 16:17 | 只看该作者

详细说说

使用特权

评论回复
板凳
wangpe|  楼主 | 2018-3-12 16:36 | 只看该作者

AD初始化程序如下(采用轮询的方式获得ADC值):
void ini_adc()
{
         /*------ADDR----*/
         REGCON = 0X01;        //TURN ON ADDR  Vaddr=2.7V
         /*------ADC-----*/
     ADCON = 0X01;        //单端输入AN0,参考电压选择:ADDR分压
         ADT = 0XFB;     //ADC CLOCK =100K  ADC转换频率:25Hz
         ADCH = 0Xe6;        //ADCVERF=0.4*VDDR P1^3 ADC INPUT
         ADCDS = 0X01;        //ADC单极性输出         
     /*......OP ......*/
         OPCON = 0X00;     // OP DISABLE / P2.1~P2.3 USE I/O PORT
         /*------PGA------*/  
         PGAM = 0X04;        //PGA=4 开启削波控制器
         ADCON |= 1<<7;  //ENABLE ADC
}
当差分输入电压为:0.22V时,通过ADC=524288*(V+-V-)/Vref,计算得到ADC=0x1A9DC,但实际测量为:0xEEC0.

使用特权

评论回复
地板
zhuww| | 2018-3-12 16:40 | 只看该作者
实际测量值和理论值本身就有点误差。。。

LZ的误差太大,误计是干扰,PCB板布线不佳等因素产生的。

使用特权

评论回复
5
zhanglli| | 2018-3-12 16:57 | 只看该作者
差了1倍,应该软件有问题,硬件不会这么差

使用特权

评论回复
6
wangpe|  楼主 | 2018-3-12 17:00 | 只看该作者
电路有问题。差分输入V-的电压要0.6V,我之前是接地,所以误差比较大。

使用特权

评论回复
7
lium| | 2018-3-12 17:05 | 只看该作者

看ADC部分的数据手册,差分输入有电压要求的。

使用特权

评论回复
8
guoyt| | 2018-3-12 17:08 | 只看该作者
就好比差分放大器,有差模和共模输入范围限制的。

使用特权

评论回复
9
wangpe|  楼主 | 2018-3-12 17:12 | 只看该作者

其实还是不大明白,我再琢磨琢磨吧,多谢了哈,结贴了先

使用特权

评论回复
10
yufe| | 2018-3-12 17:16 | 只看该作者

之前调试过,相差30mV左右吧。估计是输入电压的范围有误,后来没用了

使用特权

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

本版积分规则

938

主题

9837

帖子

2

粉丝