1
、限幅滤波法
***************************************************
*
函数名称:
AmplitudeLimiterFilter()-
限幅滤波法
*
优点:能有效克服因偶然因素引起的脉冲干扰
*
缺点:无法抑制那种周期性的干扰,且平滑度差
*
说明:
?1
、调用函数
????GetAD(),
该函数用来取得当前值
?2
、变量说明
????Value:
最近一次有效采样的值,该变量为全局变量
????NewValue:
当前采样的值
????ReturnValue:
返回值
?3
、常量说明
????A:
两次采样的最大误差值,该值需要使用者根据实际情况设置
*
入口:
Value,
上一次有效的采样值,在主程序里赋值
*
出口:
ReturnValue,
返回值,本次滤波结果
****************************************************/
#define?A??10
unsignedcharValue
unsignedcharAmplitudeLimiterFilter()
{
??unsignedcharNewValue;
??unsignedcharReturnValue;
??NewValue=GatAD();
??if(((NewValue-Value)>A))||((Value-NewValue)>A)))
??ReturnValue=Value;
??elseReturnValue=NewValue;
??return(ReturnValue);
}
2
、中位值滤波法
/****************************************************
*
函数名称:
MiddlevalueFilter()-
中位值滤波法
*
优点:能有效克服因偶然因素引起的波动干扰;对温度、液
??????
位等变化缓慢的被测参数有良好的滤波效果
*
缺点:对流量,速度等快速变化的参数不宜