【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波

在这里插入图片描述
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波_第1张图片
在DSP实现前,先在matlab中实现:(对照上面公式一行行实现即可)

fs=48000;
fc=10000;	%中心频率
g=6;
Q=1;  %值越大,峰值越尖

A=power(10,g/40);
w=2*pi*fc/fs;
sinw=sin(w);
cosw=cos(w);
alpha=sinw/(2*Q);
b0=1+alpha*A;
b1=-2*cosw;
b2=1-alpha*A;
a0=1+alpha/A;
a1=-2*cosw;
a2=1-alpha/A;
B=[b0,b1,b2];
A=[a0,a1,a2];
B=B/a0;
A=A/a0;
freqz(B,A)

结果:
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波_第2张图片
freqz(B,A,65536,fs):
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波_第3张图片
DSP上实现:(这里展示部分代码)
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波_第4张图片
注意:系数存储有顺序
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波_第5张图片
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波_第6张图片

sections = 2:两个二阶滤波

验证计算的系数是否正确:
在这里插入图片描述
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波_第7张图片
matlab中检验:

【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波_第8张图片
符合:
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波_第9张图片
最后:看output出来是不是和matlab结果一样即可

你可能感兴趣的:(DSP)