打印
[其它应用]

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

[复制链接]
666|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
songqian17|  楼主 | 2019-8-3 18:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ADC, dc, AD
SH79F6488的ADC测量值与理论计算值不一致

使用特权

评论回复
沙发
chenho| | 2019-8-3 18:07 | 只看该作者
详细说说

使用特权

评论回复
板凳
songqian17|  楼主 | 2019-8-3 18:12 | 只看该作者

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.

使用特权

评论回复
地板
gongche| | 2019-8-3 18:16 | 只看该作者

实际测量值和理论值本身就有点误差。。。

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

使用特权

评论回复
5
huwr| | 2019-8-3 18:19 | 只看该作者

差了1倍,应该软件有问题,硬件不会这么差

使用特权

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

使用特权

评论回复
7
lium| | 2019-8-3 18:33 | 只看该作者
看ADC部分的数据手册,差分输入有电压要求的。

使用特权

评论回复
8
happy_10| | 2019-8-3 18:36 | 只看该作者

就好比差分放大器,有差模和共模输入范围限制的。

使用特权

评论回复
9
wenfen| | 2019-8-3 18:39 | 只看该作者
之前调试过,相差30mV左右吧。估计是输入电压的范围有误,后来没用了

使用特权

评论回复
10
songqian17|  楼主 | 2019-8-3 18:41 | 只看该作者
其实还是不大明白,我再琢磨琢磨吧,多谢了哈,结贴了先

使用特权

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

本版积分规则

463

主题

5749

帖子

1

粉丝