ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
21 января
1487630 Топик полностью
reZident (30.12.2024 12:53, просмотров: 100) ответил Mty1 на Помогите идеей - как детектить наличие-пропадание меандра 80Гц в течении 0.3 секунды на ноге проца (stm32f4)? Есть FreeRTOS с тиком 1ms и прерывания на ноге. Точность +-10гц подойдет. В голову приходит кольцевой буфер с замерами и скользящее окно. Как то все не то.
Не нужен кольцевой буфер. Достаточно скользящей средней суммы. Через каждые 1 мс если вход = 1, то прибавляем 1 к сумме до достижения ей какого-то определенного верхнего уровня (скажем количество тиков за 1,5-2-3 периода), если на входе 0, то уменьшаем на 1 вплоть до нуля. И делаем сравнение с пороговыми уровнями. Если выше верхнего порога, то значит меандр превратился в устойчивое состояние 1. Если ниже нижнего уровня, то значит "застрял" в устойчивом состоянии 0. 

Если вы уверены, что на входе всегда именно меандр, то можно замутить все то же самое, но со знаковой арифметикой. Тогда сравнивать нужно с одним пороговым значением, но по модулю суммы.