I'm trying to make a bandpass filter (constant 0dB peak gain) with the Robert Birstow-Johnson cookbook formulae. So I calculated all coefficients to fixe the bandpass filter but I have a problem with a1 coefficient value. Indeed, a1 = -1,9829.
The features of the Bandpass are :
Center frequency : fo = 1kHz
Bandwith : Bw = 1kHz => so octave Bw = 1,38. (Q = 1)
Low corner frequency : 500Hz
Hight corner frequency: 1,5kHz
Sample Frequency : Fe = 48kHz
Here is the step I did to find a1 :
w0 = 2*pi*fo/Fe = 0,13089 rad/s
S = sinw0 = 0,130526
a1 = -2*cosw0 = -1,9829 ???!!
I read the DSP56k family manual and it write : "... In the DSP56K chip family, the extreme values that a word operand can assume are - 1 and + 0.9999998. ... " .
So did I make a mistake with the calculated ?
If no, how can I implement a1 into the code ?
note : I use the dsp56374