滑动滤波函数
INT16U digital_slide_filter(INT16U *data, INT16U len, INT16U value)
{
INT16U i;
INT16U max = data[0], min = data[0];
INT32U sum = 0;
for(i = 0; i < len - 1; i++)
{
if(max < data[i])
{
max = data[i];
}
if(min > data[i])
{
min = data[i];
}
data[i] = data[i + 1];
sum += data[i];
}
data[i] = value;
if(max < data[i])
{
max = data[i];
}
if(min > data[i])
{
min = data[i];
}
sum += data[i];
sum = sum - max - min;
return sum / (len - 2);
}