[an error occurred while processing this directive]
|
одна секция фильтра:
Считаем что коэффициенты при x(n) равны единице (16384 в Q14)
static int dl1,dl2; // Q.15
short int input; // Q.15
long int temp; // Q.29temp = input<<14 - dl1*A_COEFF1 - dl2*A_COEFF2;
dl2 = dl1; dl1 = temp>>14;
temp = dl1*B_COEFF1 + dl2*B_COEFF2;
return temp>>14; // Q.15
P.S. Надеюсь с кол-вом сдвигов не наобманул.
E-mail: info@telesys.ru