fir4.m

来自「实现语音信号AD转换的FIR滤波」· M 代码 · 共 21 行

M
21
字号
b1=fir1(79,0.1);	%80 point hamming window FIR filter, Wn=0.1
b2=fir1(79,0.1,'high');	%80 point high pass FIR filter, Wn=0.1
b3=fir1(79,[0.1 0.3]);	%band pass 0.1-0.3
fvtool(b1,1)			%Flter Visualization Tool可心以查看幅度响应、冲激响应等
fvtool(b2,1)
fvtool(b3,1)
h=buffer(round(b1*32768),8)' %参数*2^15,把小数点移最高位后面后取整,然后排成8个一行便于输出。
csvwrite('table1.txt',h)    %参数表输出到文件中
h=buffer(round(b2*32768),8)' %参数*2^15,把小数点移最高位后面后取整,然后排成8个一行便于输出。
csvwrite('table2.txt',h)    %参数表输出到文件中
h=buffer(round(b3*32768),8)' %参数*2^15,把小数点移最高位后面后取整,然后排成8个一行便于输出。
csvwrite('table3.txt',h)    %参数表输出到文件中
%然后只要把参数表从table.txt中拷到代码中,每行前面加上' .word '
t=0:1/100000:1/100;                      %采样率为100KHz,一共采集1000个点
x=63*sin(pi*3000*t)+63*sin(pi*30000*t);  %1.5KHz信号同15KHz的信号相叠加
y=filter(b1,1,x);                        %滤波结果
%画出输入输出波形
subplot(2,1,1);
plot(x)
subplot(2,1,2)
plot(y)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?