Infuse-IoT SDK API 0.0.1
A Scalable Open Source RTOS
|
Data filtering library. More...
#include <math.h>
#include <zephyr/kernel.h>
#include <zephyr/sys/__assert.h>
Go to the source code of this file.
Data Structures | |
struct | iir_filter_single_pole_s16 |
Signed 16-bit IIR single-pole filter with fraction saving. More... | |
struct | iir_filter_single_pole_s32 |
Signed 32-bit IIR single-pole filter with fraction saving. More... | |
struct | iir_filter_single_pole_f32 |
Floating point IIR single-pole filter. More... | |
Functions | |
static uint32_t | iir_filter_alpha_init (float alpha) |
Convert a filter alpha to a form compatible with IIR filters. | |
static void | iir_filter_single_pole_s16_init (struct iir_filter_single_pole_s16 *filter, uint32_t alpha, int16_t initial) |
Initialise the integer IIR single-pole filter. | |
static int16_t | iir_filter_single_pole_s16_step (struct iir_filter_single_pole_s16 *filter, int16_t x) |
Run the filter for one step. | |
static void | iir_filter_single_pole_s32_init (struct iir_filter_single_pole_s32 *filter, uint32_t alpha, int32_t initial) |
Initialise the integer IIR single-pole filter. | |
static int32_t | iir_filter_single_pole_s32_step (struct iir_filter_single_pole_s32 *filter, int32_t x) |
Run the filter for one step. | |
static void | iir_filter_single_pole_f32_init (struct iir_filter_single_pole_f32 *filter, float alpha, float initial) |
Initialise the float IIR single-pole filter. | |
static float | iir_filter_single_pole_f32_step (struct iir_filter_single_pole_f32 *filter, float x) |
Run the filter for one step. | |
Data filtering library.
SPDX-License-Identifier: FSL-1.1-ALv2