背景图片
AD滤波程序 - 啊和的博客

AD滤波程序 - 啊和的博客 AD滤波程序 - 啊和的博客

AD滤波程序

unsigned int sAD1[10] ;
unsigned int xdata AD_Value;
void get_adc_value(void)
{
	
  static unsigned char adc_cnt= 0;
  unsigned int xdata ad_min = 0;
  unsigned int xdata ad_max = 0;
  unsigned int xdata k = 0;
  sAD1[adc_cnt] = GET_ADC_VALUE(2);
  adc_cnt++;
  if (adc_cnt == 6)
  {
    ad_min = sAD1[0];
    ad_max = sAD1[0];
    k = sAD1[0];
    for (adc_cnt = 1; adc_cnt < 6; adc_cnt++)
    {
      if     (sAD1[adc_cnt] < ad_min) {
        ad_min = sAD1[adc_cnt];
      }
      else if (sAD1[adc_cnt] > ad_max) {
        ad_max = sAD1[adc_cnt];
      }
      k += sAD1[adc_cnt];
    }
    k -= ad_min;
    k -= ad_max;
    k >>= 2;
    AD_Value = k;
    k = 0;
    adc_cnt = 0;
  }
}


void get_adc_value1(void)
{
	
  static unsigned char adc_cnt= 0;
  unsigned int xdata ad_min = 0;
  unsigned int xdata ad_max = 0;
  unsigned int xdata k = 0;
  sAD2[adc_cnt] = GET_ADC_VALUE(7);
  adc_cnt++;
  if (adc_cnt == 6)
  {
    ad_min = sAD2[0];
    ad_max = sAD2[0];
    k = sAD2[0];
    for (adc_cnt = 1; adc_cnt < 6; adc_cnt++)
    {
      if     (sAD2[adc_cnt] < ad_min) {
        ad_min = sAD2[adc_cnt];
      }
      else if (sAD2[adc_cnt] > ad_max) {
        ad_max = sAD2[adc_cnt];
      }
      k += sAD2[adc_cnt];
    }
    k -= ad_min;
    k -= ad_max;
    k >>= 2;
    AD_Value1 = k;
    k = 0;
    adc_cnt = 0;
  }
}

读6次,不要最大不要最少,然后取平均

评论 0

挤眼 亲亲 咆哮 开心 想想 可怜 糗大了 委屈 哈哈 小声点 右哼哼 左哼哼 疑问 坏笑 赚钱啦 悲伤 耍酷 勾引 厉害 握手 耶 嘻嘻 害羞 鼓掌 馋嘴 抓狂 抱抱 围观 威武 给力
提交评论

清空信息
关闭评论