44.txt

来自「这是一个数字滤波程序」· 文本 代码 · 共 34 行

TXT
34
字号
///////////////////去极值平均滤波  //////////////////////

#define N 11      //N值可根据实际情况调整
int sum="0";

char filter()
{
char value_buf[N];
char count,i,j,temp;
for (count=0;count<N;count++)
{
value_buf[count]=get_ad();    //获取采样值
delay();
}
for (j=0;j<N-1;j++)  //采样值由小到大排列,排序采用冒泡法
{
for (i=0;i<N-j;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++)    //去掉第一个和末一个数
{
sum+=value_buf[count];
delay();
}
return (char)(sum/(N-2));
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?