Crossover Coefficients ADAU1452 with Microprocessor
Hello,
I am implementing a configurable DSP architecture using the ADAU1452 and loading and controlling the device from Linux. I have worked out most of the required blocks and calculations and am writing a C++ library for controlling the device. I was looking at adding a user configurable crossover block using the 3 way crossover block and only using the mids output to give a configurable highpass and lowpass block. I want the user to be able to select the filter type and order in real time but in looking at the DSP block it appears that the 12db and 18db cascade a 1st order block that only has 3 coefficients rather than 4. Would it be acceptable to select the highest order filter when compiling the schematic and then putting 0 in the A2 and B2 slot to get the 1st order block to say get a Linkwitz-Riley 12db low pass using the s 2sets of 48db coefficients.
ex FS = 48000 f0 = 1000 Linkwitz-Riley 12db High Pass 2 sets of same coefficients
B0 = .938488
B1 = -.93849
B2 = 0
A1 = -.87698
A2 = 0
Audio Signal Processors
adau1452
SigmaDSP Audio Processors
HI:
I'm not sure this will work however you can prototype what you are trying to do with regular 2nd order filters an bypass some of them. I'm sure there will be a need for some adaptations to your concept. Use the Stimuli and Probe to see the resulting transfer function.
Hope this works
MIguel
Miguel,
Ok so what your saying is for maximum adaptability cascade filters to get the same effect. In this case if i want to so a high order filter when i am controlling from C++ i would input the coefficients from the high order equations rather then just cascading 2 bessel or butterwurth correct? Below is the hierarchical block i created to represent the filter and i would combine and bypass to get the desired effect? Thanks Ed
Please log in to reply.

