реклама на сайте
подробности

 
 
> Помогите переделать цифровой фильтр, и понять, как его рассчитывать
LCD
сообщение Feb 27 2012, 06:33
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 92
Регистрация: 1-06-08
Пользователь №: 37 959



Здравствуйте. Есть устройство с работающим эллиптическим полосовым цифровым фильтром 10 порядка и требуется этот фильтр немного переделать. Известно, что фильтр рассчитан в Matlab, но проблема в том, что я никогда не работал ни с Матлабом, ни с цифровыми фильтрами вообще. Частота выборки - 512 Гц, полоса - 47 - 53 Гц.
Нужно одно из двух, а лучше - оба пункта:
а) сдвинуть верхнюю границу до 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 */
};

Сама программа фильтрации написана на ассемблере для ARM, могу выложить и ее. Подскажите, как перерасчитать фильтр.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 20:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01348 секунд с 7
ELECTRONIX ©2004-2016