Вход
Наше всё
Теги
codebook
无线电组件
Поиск
Опросы
Закон
Четверг
21 ноября
О смысле всего сущего
0xFF
Средства и методы разработки
Мобильная и беспроводная связь
Блошиный рынок
Объявления
Микроконтроллеры
PLD, FPGA, DSP
AVR
PIC
ARM, RISC-V
Технологии
Кибернетика, автоматика, протоколы
Схемы, платы, компоненты
Микроконтроллеры
1031776
Топик полностью
Boвa
(28.08.2020 09:53, просмотров: 639)
ответил
my504
на
Это не ошибка. Это порог. Причем он при определенной ситуации может стать ловушкой, когда слишком малое входное значение не сможет уменьшить текущее значение фильтра. Решается фикспойнтом для значения фильтра. То есть нужно добавить справа к значению фильтра нужное число дробных разрядов и каждое новое входное значение левым сдвигом делать фикспойнтом. При выводе значения фильтра наружу восстанавливать целочисленную разрядность правым сдвигом.
Если добавить 8 "лишних" бит справа сдвиги будут не нужны. :-))
Ответить
Сдвиги нужны хотя бы потому, что ВЫХОД фильтра (как и вход) - целое, а сам фильтр - фикспойнт (те самые "лишние").
-
my504
(28.08.2020 10:44
)