📄 firhighf.m
字号:
%用fir1设计高铜滤波器
clf;
[y,fs,bits]=wavread('C:\MATLAB701\work\test',65535); %将文件读进来
spectrum=fft(y,n1); %对采样点进行fft变换
n2=length(spectrum); %计算fft变换后向量的长度
t2=0:n2-1;
subplot(2,2,1);
spreal=abs(spectrum) ; %计算fft变换后序列的实部
spimag=angle(spectrum) ; %计算fft变换后序列的虚部
plot(t2,spreal)
xlabel('k') %把x轴定义为w
title('原信号幅度') %标明此图形画的是幅度
subplot(2,2,2)
plot(t2,spimag) ;
xlabel('k') %把x轴定义为虚部
title('原信号相位') %把x轴定义为虚部
%从这里开始设计滤波器
highwp=4800/(fs/2);
highws=5000/(fs/2);
b1=fir1(90,(highwp+highws)/2,'high');
%freqz(b1,1)
y=fftfilt(b1,y); %用高通滤波器对抽样信号进行滤波
n=length(y);
xx=0:n-1;
yreal=abs(y);
yimag=angle(y);
subplot(2,2,3);
plot(xx,yreal)
xlabel('n')
ylabel('幅度');
title('经过高通滤波器后信号幅度')
subplot(2,2,4)
plot(xx,yimag);
xlabel('n');
ylabel('相位');
title('经过高通滤波器后信号相位')
%sound(y,fs) %使用sound函数有问题,未解决
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -