[an error occurred while processing this directive]
Ответ: Там внизу ты вроде написал для физического буфера длинной N так я сделал то же самое с виртуальным буфером (конечно имеет место снижение точности)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

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

Отправлено _Mic 20 февраля 2003 г. 16:47
В ответ на: Речь идет о том, что алгоритм, который ты предложил, не имеет никакого отношения к скользящему среднему, несмотря на твое утверждение. отправлено Oldring 20 февраля 2003 г. 16:19

Это ты вроде писал для физического буфера длинной N так я сделал то же самое с виртуальным буфером (конечно имеет место снижение точности)
однако это позволило сэкономить 4 кБайт РАМ которого попросту небыло
и работает неплохо в пределах заданных требований
А сейчас ехидный вопрос - если ты такой точный то что ты делаеш с остатком от деления
>Осталось поделить сумму на число отсчетов
а ??

>Тогда только буфер для хранения N предыдущих отсчетов, одна >переменная суммы, и одна переменная, хранящее текущее положение >самого старого отсчета в буфере. Первоначально во всех переменных >нули. При получении очередного отсчета вычитаем из суммы самый >старый (беря его из буфера по индексу) и прибавляем новый. После >чего прописываем в буфер на место старого отсчета новый и сдвигаем >указатель. Осталось поделить сумму на число отсчетов - и скользящее >среднее готово :)


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

Ответы



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

E-mail: info@telesys.ru