File syn_filter_design.h¶
FileList > dsp > syn_filter_design.h
Go to the source code of this file
Dynamic runtime IIR Biquad filter coefficient generator (Q16.16 fixed-point).
#include "../common/syn_defs.h"#include "../util/syn_qmath.h"#include "syn_biquad.h"
Classes¶
| Type | Name |
|---|---|
| struct | SYN_BiquadCoeffs Normalized Biquad filter coefficients (where a0 = 1.0). |
Public Functions¶
| Type | Name |
|---|---|
| SYN_Status | syn_filter_design_apply_to_biquad (const SYN_BiquadCoeffs * coeffs, SYN_FilterBiquad * biquad) Apply calculated coefficients to a SYN_FilterBiquad instance. |
| SYN_Status | syn_filter_design_bandpass (q16_t fc_hz, q16_t fs_hz, q16_t Q, SYN_BiquadCoeffs * out) Calculate Bandpass filter coefficients (constant skirt gain). |
| SYN_Status | syn_filter_design_highpass (q16_t fc_hz, q16_t fs_hz, q16_t Q, SYN_BiquadCoeffs * out) Calculate Butterworth Highpass filter coefficients. |
| SYN_Status | syn_filter_design_lowpass (q16_t fc_hz, q16_t fs_hz, q16_t Q, SYN_BiquadCoeffs * out) Calculate Butterworth Lowpass filter coefficients. |
| SYN_Status | syn_filter_design_notch (q16_t fc_hz, q16_t fs_hz, q16_t Q, SYN_BiquadCoeffs * out) Calculate Notch / Bandstop filter coefficients. |
Public Functions Documentation¶
function syn_filter_design_apply_to_biquad¶
Apply calculated coefficients to a SYN_FilterBiquad instance.
SYN_Status syn_filter_design_apply_to_biquad (
const SYN_BiquadCoeffs * coeffs,
SYN_FilterBiquad * biquad
)
Parameters:
coeffsCalculated biquad coefficients.biquadTarget biquad filter instance.
Returns:
SYN_OK on success, SYN_INVALID_PARAM if NULL.
function syn_filter_design_bandpass¶
Calculate Bandpass filter coefficients (constant skirt gain).
Parameters:
fc_hzCenter frequency in Hz (Q16.16).fs_hzSampling frequency in Hz (Q16.16).QQuality factor / bandwidth selectivity (Q16.16, e.g., Q16_FROM_FLOAT(2.0)).outPointer to output coefficient structure.
Returns:
SYN_OK on success, SYN_INVALID_PARAM if invalid.
function syn_filter_design_highpass¶
Calculate Butterworth Highpass filter coefficients.
Parameters:
fc_hzCutoff frequency in Hz (Q16.16).fs_hzSampling frequency in Hz (Q16.16).QQuality factor (Q16.16, e.g., Q16_FROM_FLOAT(0.7071) for Butterworth).outPointer to output coefficient structure.
Returns:
SYN_OK on success, SYN_INVALID_PARAM if invalid.
function syn_filter_design_lowpass¶
Calculate Butterworth Lowpass filter coefficients.
Parameters:
fc_hzCutoff frequency in Hz (Q16.16).fs_hzSampling frequency in Hz (Q16.16).QQuality factor (Q16.16, e.g., Q16_FROM_FLOAT(0.7071) for Butterworth).outPointer to output coefficient structure.
Returns:
SYN_OK on success, SYN_INVALID_PARAM if invalid.
function syn_filter_design_notch¶
Calculate Notch / Bandstop filter coefficients.
Parameters:
fc_hzRejection frequency in Hz (Q16.16).fs_hzSampling frequency in Hz (Q16.16).QQuality factor / notch depth selectivity (Q16.16, e.g., Q16_FROM_FLOAT(5.0)).outPointer to output coefficient structure.
Returns:
SYN_OK on success, SYN_INVALID_PARAM if invalid.
The documentation for this class was generated from the following file src/syntropic/dsp/syn_filter_design.h