日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]/////////////////////////////////限副濾波/////////////////// /*濾波程序返回有效的實際值*/#define A 10 //A值可根據(jù)實際情況調(diào)整 char value; //value為有效值 char filter() { char new_value; //new val

/////////////////////////////////限副濾波///////////////////
/*濾波程序返回有效的實際值*/

#define A 10 //A值可根據(jù)實際情況調(diào)整
char value; //value為有效值
char filter()
{
char new_value; //new value為當前采樣值
new value=get_ad();
if ((new_value-value>A)‖(value-new_value> A)
return value;
return new_value;
}

/////////////////////////中位值濾波/////////////////////////

#define N 11 //N值可根據(jù)實際情況調(diào)整
char filter()
{
char value_buf[N];
char count,i,j,temp;
for (count=0;count{
value_buf[count]=get_ad(); //獲取采樣值
delay();
}
for (j=0;j{
for (i=0;i{
if(value_buf[i]>value_buf[i+1])
{
temp=value_buf[i];
value_buf[i]=value_buf[i+1];
value_buf[i+1]=temp;
}
}
}
return value_buf[(N-1)/2]; //取中間值
}

/////////////////////////算術平均濾波//////////////////////

#define N 12
char filter()
{
int sum=0;
for(count=0;count{
sum+=get_ad();
delay();
}
return (char)(sum/N);
}


///////////////////去極值平均濾波 //////////////////////

#define N 11 //N值可根據(jù)實際情況調(diào)整
int sum=0;

char filter()
{
char value_buf[N];
char count,i,j,temp;
for (count=0;count{
value_buf[count]=get_ad(); //獲取采樣值
delay();
}
for (j=0;j{
for (i=0;i{
if(value_buf[i]>value_buf[i+1])
{
temp=value_buf[i];
value_buf[i]=value_buf[i+1];
value_buf[i+1]=temp;
}
}
}

for(count=1;count<(N-1);count++) //去掉第一個和末一個數(shù)
{
sum+=value_buf[count];
delay();
}
return (char)(sum/(N-2));
}

///////////////////移動平均濾波(遞推平均濾波)///////////

#define N 12
char value_buf[N];
char i=0;
char filter()
{
char count;
int sum=0;
value_buf[i++]=get_ad();
if(i=N) i=0;
for (count=0;countsum+=value_buf[count];
return (char)(sum/N)

}

//////////////////////加權平均濾波///////////////////////
#define N 12
char code jq[N]={1,2,3,4,5,6,7,8,9,10,11,12};//加權系數(shù)表
char code sum_jq=1+2+3+4+5+6+7+8+9+10+11+12;
char filter()
{
char count;
char value_buf[N];
int sum=0;
for (count=0;count{value_buf[count]=get_ad(); //獲取采樣值
delay();
}
for (count=0;countsum+=value_buf[count]*jq[count];
return (char)(sum/sum_jq);
}

/////////////////////////低通濾波////////////////////////

#define a 0.25
char value; //value為已有值
char filter()
{
char new_value; //new value為當前采樣值
new_value=get_ad();
return (a*new_value+(1-a)*value);
}

本站聲明: 本文章由作者或相關機構(gòu)授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關閉