Нужно одно из двух, а лучше - оба пункта:
а) сдвинуть верхнюю границу до 63 Гц,
б) сдвинуть полосу на 10 Гц вверх.
Коэффициенты в программе описаны так:
Код
#define IIR_filter_order 10
int Filter50_coeffs[(IIR_filter_order>>1)*5] =
{
0x00000609, /* section 1 coefficient B2 */
0xFFFFF7D8, /* section 1 coefficient B1 */
0x00000609, /* section 1 coefficient B0 */
0xFFFFC306, /* section 1 coefficient A2 */
0x0000663E, /* section 1 coefficient A1 */
0x00000AD5, /* section 2 coefficient B2 */
0xFFFFEC77, /* section 2 coefficient B1 */
0x00000AD5, /* section 2 coefficient B0 */
0xFFFFC274, /* section 2 coefficient A2 */
0x00006509, /* section 2 coefficient A1 */
0x00000EFB, /* section 3 coefficient B2 */
0xFFFFE9EE, /* section 3 coefficient B1 */
0x00000EFB, /* section 3 coefficient B0 */
0xFFFFC24E, /* section 3 coefficient A2 */
0x00006868, /* section 3 coefficient A1 */
0x00000D44, /* section 4 coefficient B2 */
0xFFFFE8C0, /* section 4 coefficient B1 */
0x00000D44, /* section 4 coefficient B0 */
0xFFFFC0EB, /* section 4 coefficient A2 */
0x00006544, /* section 4 coefficient A1 */
0xFFFFFC0A, /* section 5 coefficient B2 */
0x00000000, /* section 5 coefficient B1 */
0x000003F6, /* section 5 coefficient B0 */
0xFFFFC0D5, /* section 5 coefficient A2 */
0x00006A7B /* section 5 coefficient A1 */
};
int Filter50_coeffs[(IIR_filter_order>>1)*5] =
{
0x00000609, /* section 1 coefficient B2 */
0xFFFFF7D8, /* section 1 coefficient B1 */
0x00000609, /* section 1 coefficient B0 */
0xFFFFC306, /* section 1 coefficient A2 */
0x0000663E, /* section 1 coefficient A1 */
0x00000AD5, /* section 2 coefficient B2 */
0xFFFFEC77, /* section 2 coefficient B1 */
0x00000AD5, /* section 2 coefficient B0 */
0xFFFFC274, /* section 2 coefficient A2 */
0x00006509, /* section 2 coefficient A1 */
0x00000EFB, /* section 3 coefficient B2 */
0xFFFFE9EE, /* section 3 coefficient B1 */
0x00000EFB, /* section 3 coefficient B0 */
0xFFFFC24E, /* section 3 coefficient A2 */
0x00006868, /* section 3 coefficient A1 */
0x00000D44, /* section 4 coefficient B2 */
0xFFFFE8C0, /* section 4 coefficient B1 */
0x00000D44, /* section 4 coefficient B0 */
0xFFFFC0EB, /* section 4 coefficient A2 */
0x00006544, /* section 4 coefficient A1 */
0xFFFFFC0A, /* section 5 coefficient B2 */
0x00000000, /* section 5 coefficient B1 */
0x000003F6, /* section 5 coefficient B0 */
0xFFFFC0D5, /* section 5 coefficient A2 */
0x00006A7B /* section 5 coefficient A1 */
};
Сама программа фильтрации написана на ассемблере для ARM, могу выложить и ее. Подскажите, как перерасчитать фильтр.