单片机软件滤波的几种方法:假定从AD中读取数据的子程序为:unsigned int get_ad();
1、限幅滤波法(又称程序判断滤波法)
A、方法:根据经验判断,确定两次采样允许的最大偏差值(设为A)。每次检测到新值时判断:如果本次值与上次值之差<=A,则本次值有效;如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值。
B、优点:能有效克服因偶然因素引起的脉冲干扰
C、缺点:无法抑制那种周期性的干扰,平滑度差
D、软件实现:
//=======================
//值A可根据实际情况调整,value为有效值,new_value为当前采样值
//滤波程序返回有效的实际值