首页 > 代码库 > 常用ADC滤波处理

常用ADC滤波处理

  #define N 70

  XDATA WORD Value_buf[N];
  XDATA DWORD ADCValue;

  static BYTE v_gu8cnt=0;
  static BYTE i=0;
  static XDATA DWORD AdcReturn=0;

Value_buf[i++]=Key_ScanValue(ADCKEY1);    if(i==N)        i=0;    for(v_gu8cnt=0;v_gu8cnt<N;v_gu8cnt++)   //Smoothing filter         {            v_gu16AD_Data+=Value_buf[v_gu8cnt];            if(v_gu8cnt==N-1)                {                    AdcReturn=v_gu16AD_Data;                    v_gu16AD_Data=Value_buf[v_gu8cnt];                }        }    ADCValue=AdcReturn/N;

 

常用ADC滤波处理