Доброго времени суток.
Сразу приношу извинения за нубские вопросы.
Но какую литературу я бы ни читал о ЦОС там высвечиваются только алгоритмы, методы анализа и расчета.
Меня интересуют можно сказать таки детские вопросы, и так по порядку.
1. Я рассчитал FIR фильтр в Matlab и получил искомые коэффициенты, фильтр устойчив, порядок фильтра оптимальный.
2. Теперь я хочу применить его для обработки сигнала полученного из АЦП микроконтроллера STM32F103 то есть от 0 до 4096.
3. Для STM32 серии CortexM3 имеется библиотека DSP которая поставляется как отдельная библиотека от ST а так же есть в составе CMSIS например можно задействовать ее в Keil. Так как F103 не содержит DSP - инструкций, как я понимаю все алгоритмы выполняются на стандартной арифметике.
4. И вот тут у меня начинаются вопросы....
5. Я хочу применить FIR фильтр из состава библиотеки. Но какой использовать? Если логически подумать, так как входные данные целочисленные то мне нужна функция arm_fir_fast_q15, но она ругается на коэффициенты. Так как они имеют вид:
-0.0085006295830239147,
-0.039315452455814658,
0.020190437531132147,
0.0076176048595180471, (взял первые парочку чтоб не копировать весь массив.)
Если применять функцию arm_fir_f32 то коэффициенты ей подходят, но ведь данные мы имеем целочисленные и выход нужен целочисленный.
6. И еще один вопрос, в примере из CMSIS FIR фильтр реализован где в функцию arm_fir_f32 передается массив выборок равный 32. Можно ли пользоваться этими фильтрами передавая на вход всего одну выборку соответственно и получая один результат за итерацию чтобы не накапливать массив для постобработки.
Может кто пользуется этими библиотеками, расскажите пожалуйста как правильно использовать, если не затруднит.
За ранее благодарен.