
One pole filter, LP and HP
Type : Simple 1 pole LP and HP filter References : Posted by scoofy[AT]inf[DOT]elte[DOT]hu
Notes : Slope: 6dB/Oct
Reference: www.dspguide.com
Code : Process loop (lowpass):
out = a0*in  b1*tmp;
tmp = out;
Simple HP version: subtract lowpass output from the input (has strange behaviour towards nyquist):
out = a0*in  b1*tmp;
tmp = out;
hp = inout;
Coefficient calculation:
x = exp(2.0*pi*freq/samplerate);
a0 = 1.0x;
b1 = x;

Comments
Added on : 05/01/07 by dj_rejo[ AT ]hotmail[ DOT ]com Comment : Why don't you just say:
Process loop (lowpass):
out = a0*in + b1*tmp;
tmp = out;
Simple HP version: subtract lowpass output from the input (has strange behaviour towards nyquist):
out = a0*in + b1*tmp;
tmp = out;
hp = inout;
Coefficient calculation:
x = exp(2.0*pi*freq/samplerate);
a0 = 1.0x;
b1 = x;
Added on : 05/01/07 by scoofy[ AT ]inf[ DOT ]elte[ DOT ]hu Comment : There's a tradition among digital filter designers that the pole coefficients have a negative sign. Of course the other one is also valid, and sometimes these notations are mixed up.
If you're worried about the extra negation operation, then you could say
b1 = x;
a0 = 1.0+b1;
so that there's no additional operation overhead.
 peter schoffhauzer
Added on : 06/01/07 by nobody[ AT ]nowhere[ DOT ]com Comment : Of course, you don't need tmp.
Process loop (lowpass):
out = a0*in + b1*out;
Added on : 16/02/07 by scoofy[ AT ]inf[ DOT ]elte[ DOT ]hu Comment : Indeed.
Added on : 18/06/09 by bob[ AT ]yahoob[ DOT ]com Comment : Or...
out += a0 * (in  out);
:)
Added on : 12/10/15 by djdelaflav[ AT ]gmail[ DOT ]com Comment : can you please send me a few pictures to show me how you hooked up the mixer on the back...

Add your own comment
Comments are displayed in fixed width, no HTML code allowed! 



