『壹』 二階低通濾波器的C程序求一個,急用!!!
long lvbo_test(long NEW_DATA,unsigned char k)
{
long result; //聲明一個變數作為濾波緩存
if( NEW_DATA < OLD_DATA )
{
result = OLD_DATA - NEW_DATA;
result *= k;
result += 128; //+128是為了四捨五入
result /= 256;
result = OLD_DATA - result;
}
else if( NEW_DATA > OLD_DATA )
{
result = NEW_DATA - OLD_DATA;
result *= k;
result += 128; //+128是為了四捨五入
result /= 256;
result = OLD_DATA + result;
}
else
{
result = OLD_DATA;
}
OLD_DATA = result;
return result;
}