MSP430采样精度问题请教

2019-08-04 18:07发布

本帖最后由 pluto55 于 2013-12-14 12:02 编辑

RTX截图未命名.png
简单的电阻电路如图所示:PV+供电30V
万用表实测 sample处电压:702mv
AD采样值为:472(10次平均值) 转换成电压值:472*1500/1023 = 692mv

芯片型号为MSP430F2132,想问一下,大家用的精度有这么差吗,或者是我配置有问题,请教。

ADC的配置代码如下:
//电压采样打开,使用管脚P2.0:ADC:A0
void adc_volt_open(void)
{               
        ADC10CTL0 = SREF_1  + REFON + ADC10SHT_3 + ADC10ON; //内部参考、1.5V、开启参考     SAMPLE time 64clock
        ADC10CTL1 = INCH_0 + ADC10SSEL_3 + ADC10DIV_7;                // input A1,选择SMCLK为时钟源,8分频试下
        ADC10AE0 = 0x01;                                                                             // PA.0 ADC option select
}
uint16_t adc_sample(void)
{
        uint16_t adc_value;
    ADC10CTL0 |= ENC + ADC10SC;             // Sampling and conversion start

   while(ADC10CTL1&ADC10BUSY);//等待转换完成后再读取数据
    adc_value = ADC10MEM;
    return adc_value;
}

做过的努力:
1.看到手册内部说sample时间是和具体电路有关系的,故调了时间,从原来的ADC时钟不分频,SAMPLE time 16clock,变成了ADC时钟8分频、SAMPLE time 64clock,发现结果没有改变
RTX截图未命名.png
2.把内部REF2.5V输出,用万用表实测为2532mv,虽然有偏差,但是不是偏差的主要原因
3.管脚处的纹波如下所示:


有明白的请指教,谢谢@dirtwillfly



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
dirtwillfly
1楼-- · 2019-08-05 00:00
误差还可以啊
(702mv-692mv)/702mv=1.4%
你用的电阻是1%精度的,两个电阻串联,会有累计误差
pluto55
2楼-- · 2019-08-05 05:29
 精彩回答 2  元偷偷看……
dirtwillfly
3楼-- · 2019-08-05 05:42
我觉得用msp430的内部基准,测出来没经过校准,这个数据已经是比较准的了。你看看MSP430F2132的内部基准误差就知道了
QQ截图20131214165944.png
dirtwillfly
4楼-- · 2019-08-05 10:51
如果按你测得的内部REF2.5V输出,实测为2532mv,用2532/2500这个比例计算
472*1500*(2532/2500)/1023 = 701mv
i1mcu
5楼-- · 2019-08-05 13:04
你的电路设计都是存在误差的。
i1mcu
6楼-- · 2019-08-05 18:09
包括输入也是有内阻的。

一周热门 更多>