[an error occurred while processing this directive]
Ну что-ж, могу кое-что предложить.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено AlexandrY 13 декабря 2003 г. 20:03
В ответ на: Ответ: Делал и с умножением и без, большой разницы по размеру кода или по загрузке проца не было (правда особо не оптимизировал) имхо более правильно делать как в аонах. AlexandrY об этом знает лучше отправлено ig_z 13 декабря 2003 г. 19:23

Это рекурсивный полосовой фильтр 2-го порядка (точно такой же как у TI, но топологически измененный) с одним коэффициентом alpha
Для частот:
697,770,852,941,1209,1336,1477,1633
коэффициент будет соотвественно:
20088,17530,14468,10959,-303,-5712,-11528,-17499
Вызываться процедура должна 4807 раз в секунду.
Переменные z в начале равны 0.
Выходной сигнал содержится в переменной stmp


stmp=u.dtmf.z[0][1]-u.dtmf.z[0][0]; // Проверяеться переполнение
RESLO=0;
RESHI=u.dtmf.z[0][1];
MACS=alpha[0];
OP2=stmp;
OP2=stmp;
u.dtmf.z[0][1]=RESHI-stmp;
stmp=RESHI;
RESLO=0;
RESHI=sig-stmp;
MACS=RESHI;
OP2=0xF800; // -0x10000/32;
u.dtmf.z[0][0]=RESHI;
stmp=stmp+RESHI-sig;

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru