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

【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波
在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个级联均衡器对同一个信号滤波
freqz(B,A,65536,fs):
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波
DSP上实现:(这里展示部分代码)
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波
注意:系数存储有顺序
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波

sections = 2:两个二阶滤波

验证计算的系数是否正确:
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波
【DSP实验】软件仿真方法在VisualDSP++中实现用2个级联均衡器对同一个信号滤波
matlab中检验:

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

上一篇:凌乱的DSP笔记(1)-F28335基础知识


下一篇:【STM32F429的DSP教程】第2章 Matlab R2018a的安装