ADC采样结果跳动,在线急等!原子哥!

2019-08-17 03:18发布

11.png
大约0.1的跳动,而且过一段时间会突然出现一次零,这是我的ADC程序,大哥们帮小弟看看,在线等
void  Adc1_Init(void)
{        
        ADC_InitTypeDef ADC_InitStructure;
        GPIO_InitTypeDef GPIO_InitStructure;

        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_ADC1 , ENABLE );         


        RCC_ADCCLKConfig(RCC_PCLK2_Div6);   

                            
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;               
        GPIO_Init(GPIOA, &GPIO_InitStructure);       

        ADC_DeInit(ADC1);  /

        ADC_InitStructure.ADC_Mode = ADC_Mode_Independent ;       
        ADC_InitStructure.ADC_ScanConvMode = DISABLE;       
        ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;       
        ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;       
        ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;       
        ADC_InitStructure.ADC_NbrOfChannel = 1;       
        ADC_Init(ADC1, &ADC_InitStructure);        /

  ADC_DMACmd(ADC1, ENABLE);
        ADC_Cmd(ADC1, ENABLE);       
       
        ADC_ResetCalibration(ADC1);       
         
        while(ADC_GetResetCalibrationStatus(ADC1));        /
        ADC_SoftwareStartConvCmd(ADC1, ENABLE);
       
        ADC_StartCalibration(ADC1);         

        while(ADC_GetCalibrationStatus(ADC1));         
       
//        ADC_SoftwareStartConvCmd(ADC1, ENABLE);               
ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 1, ADC_SampleTime_239Cycles5 );       
}       

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
青龙寺造纸机
1楼-- · 2019-08-17 03:33
 精彩回答 2  元偷偷看……
xuande
2楼-- · 2019-08-17 05:37

ID为什么叫“青龙寺”?


月无缺
3楼-- · 2019-08-17 10:41
青龙寺造纸机 发表于 2017-5-22 15:48
额········已经解决了,滤波算法~

我现在也遇到了AD采样结果跳动的情况,你是用什么滤波算法解决的?能分享一下吗?

一周热门 更多>