数字滤波器的设计滤波器系数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

function hn=Fir8Serial

N=16; %滤波器长度

fs=2000; %采样频率

fc=500; %低通滤波器的截止频率

B=12; %量化位数

%生成窗函数

w_kais=blackman(N)';

%采用fir1函数设计FIR滤波器

b_kais=fir1(N-1,fc*2/fs,w_kais);

%量化滤波器系数

Q_kais=round(b_kais/max(abs(b_kais))*(2^(B-1)-1))

hn=Q_kais;

%转化成16进制数补码

Q_h=dec2hex(Q_kais+2^B*(Q_kais<0))

%求滤波器的幅频响应

m_kais=20*log(abs(fft(b_kais,1024)))/log(10); m_kais=m_kais-max(m_kais); Q_kais=20*log(abs(fft(Q_kais,1024)))/log(10); Q_kais=Q_kais-max(Q_kais);

%设置幅频响应的横坐标单位为Hz

x_f=[0:(fs/length(m_kais)):fs/2];

%只显示正频率部分的幅频响应

m1=m_kais(1:length(x_f));

m2=Q_kais(1:length(x_f));

%绘制幅频响应曲线

plot(x_f,m1,'-',x_f,m2,'--');

xlabel('频率(Hz)');ylabel('幅度(dB)');

legend('未量化','12bit量化');

grid;

相关文档
最新文档