[技术问答] 003芯片ad检测不准

[复制链接]
 楼主| ckywing 发表于 2020-1-10 10:20 | 显示全部楼层 |阅读模式
检测出来总是偏差大0.5V,用的官方例程检测的
sgrtf661 发表于 2020-1-10 11:46 | 显示全部楼层
代理技术支持  409946461
kane1019 发表于 2020-1-10 17:43 | 显示全部楼层
华大代理,可提供给我司专业的FAE
martinhu 发表于 2020-1-14 09:22 | 显示全部楼层
即使是官方例程也要看整体程序的配置环境,能否把你的代码贴出来看看
 楼主| ckywing 发表于 2020-6-24 10:16 | 显示全部楼层
martinhu 发表于 2020-1-14 09:22
即使是官方例程也要看整体程序的配置环境,能否把你的代码贴出来看看

*************************************************/
uint8_t         Adc_Config(void)
{
          stc_adc_cfg_t             stcAdcCfg;
    stc_adc_scan_cfg_t        stcAdcScanCfg;
   
    DDL_ZERO_STRUCT(stcAdcCfg);
    DDL_ZERO_STRUCT(stcAdcScanCfg);
   
    if (Ok != Clk_SetPeripheralGate(ClkPeripheralAdcBgr, TRUE))  //ADCBGR 外设时钟使能
    {
                        return Error;
    }

    Gpio_SetAnalog(3, 2, TRUE);          //VCC
    Gpio_SetAnalog(3, 3, TRUE);                //LED
//                Gpio_SetAnalog(3, 4, TRUE);                //LED
   
    Adc_Enable();
    M0P_BGR->CR_f.BGR_EN = 0x1u;   //BGR必须使能
    M0P_BGR->CR_f.TS_EN = 0x0u;    //内置温度传感器,视使用需求
    delay100us(1);
   
    stcAdcCfg.enAdcOpMode =AdcScanMode; //                //扫描采样模式
    stcAdcCfg.enAdcClkSel = AdcClkSysTDiv1;            //PCLK
    stcAdcCfg.enAdcSampTimeSel = AdcSampTime12Clk;      //采样时钟
//                stcAdcCfg.enAdcRefVolSel = RefVolSelInBgr2p5;    //参考电压:内部2.5V(avdd>3V,SPS<=200kHz)
    stcAdcCfg.enAdcRefVolSel = RefVolSelAVDD;          //参考电压:AVDD
    stcAdcCfg.bAdcInBufEn = FALSE;                     //电压跟随器如果使能,SPS采样速率 <=200K
    stcAdcCfg.enAdcTrig0Sel = AdcTrigDisable;          //ADC转换自动触发设置
    stcAdcCfg.enAdcTrig1Sel = AdcTrigDisable;
    Adc_Init(&stcAdcCfg);                                                                                                                         //ADC初始化

   
                stcAdcScanCfg.u8AdcScanModeCh = ADC_SCAN_CH2_EN | ADC_SCAN_CH3_EN ;                //ADC_SCAN_CH4_EN
        
                stcAdcScanCfg.u8AdcSampCnt = 0x2;  //连续扫描转换次数,保持通道的倍数,6通道 = 0x5+1(1倍),或者11+1(2倍)……
               
                Adc_ConfigScanMode(&stcAdcCfg, &stcAdcScanCfg);                                //配置扫描转换模式
               


}


/************************************************

点评

如果输入阻抗大,或者被采样源的分压电阻大,可以考虑加大ADC的时钟分频 stcAdcCfg.enAdcClkSel = AdcClkSysTDiv1; //PCLK 可以改成 stcAdcCfg.enAdcClkSel = AdcClkSysTDiv8; //PCLK  发表于 2020-6-28 21:56
pcf00 发表于 2020-6-24 10:32 | 显示全部楼层
我使用L110这颗IC时,ADC采样也是有误差,还比较大,有0.3V的差距

点评

[url=home.php?mod=space&uid=2806704]@martinhu[/url] :联系过,暂未回复  发表于 2020-6-29 15:15
一般最大误差在3个bit左右,你有联系过华大或者代理的支持吗  发表于 2020-6-28 21:57
华大章工 发表于 2020-6-24 14:53 | 显示全部楼层
华大MCU ADC采集问题分析
http://www.tigerchip.com.cn/forum.php?mod=viewthread&tid=93&extra=page%3D2
pcf00 发表于 2020-6-29 15:14 | 显示全部楼层
华大章工 发表于 2020-6-24 14:53
华大MCU ADC采集问题分析
http://www.tigerchip.com.cn/forum.php?mod=viewthread&tid=93&extra=page%3D2 ...

没账号的
liaotian001 发表于 2020-6-29 23:41 | 显示全部楼层
ADC量测相差0.3v, 0.5v,这种MCU还能卖吗?
关注一下这个帖子:
https://bbs.21ic.com/icview-2876432-1-1.html
 楼主| ckywing 发表于 2021-1-8 17:14 | 显示全部楼层
华大章工 发表于 2020-6-24 14:53
华大MCU ADC采集问题分析
http://www.tigerchip.com.cn/forum.php?mod=viewthread&tid=93&extra=page%3D2 ...

要账号的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

3

帖子

0

粉丝
快速回复 返回顶部 返回列表