内容发布更新时间 : 2024/12/23 16:16:23星期一 下面是文章的全部内容请认真阅读。
.
stem(f,abs(fxt)/max(abs(fxt)), '.' );grid;title( '(b) s(t) 的频
谱 ' );
axis([0,Fs/5,0,1.2]);
xlabel( 'f/Hz' );ylabel(
' 幅度 ' );
( myplot 函数):
function myplot(B,A)
%时域离散系统损耗函数绘图
%B为系统函数分子多项式系数向量
%A为系统函数分母多项式系数向量
[H,W]=freqz(B,A,1000); m=abs(H);
plot(W/pi,20*log10(m/max(m)));grid on;
xlabel( '\\omega/\\pi'
);ylabel(
' 幅度 (dB)' )
axis([0,1,-150,50]);title(
' 损耗函数曲线 ' );( tplot 函数):
function tplot(xn,T,yn)
%时域序列连续曲线绘图函数
% xn: 信号数据序列, yn: 绘图信号的纵坐标名称(字符串)% T为采样间隔 n=0:length(xn)-1;t=n*T; plot(t,xn);
xlabel( 't/s' );ylabel(yn);
.
.
axis([0,t(end),min(xn),1.2*max(xn)]) (实验 4_1 源代码):
% IIR 数字滤波器设计及软件实现
clear all ;close Fs=10000;T=1/Fs;
all
%采样频率
%调用信号产生函数 mstg 产生由三路抑制载波调幅信号相加构成的
复合信号 st
st=mstg;
%低通滤波器设计与实现
========================================= fp=280;fs=450;
wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60;
?指标(低通滤波器的
通、阻带边界频)
[N,wp]=ellipord(wp,ws,rp,rs);
%调用 ellipord 计算椭圆 DF阶数
N和通带截止频率 wp
[B,A]=ellip(N,rp,rs,wp);
%调用 ellip 计算椭圆带通 DF系统
函数系数向量 B 和 A
y1t=filter(B,A,st);
%滤波器软件实现
% 低通滤波器设计与实现绘图部分
figure(5);
subplot(2,1,1); myplot(B,A);
%调用绘图函数 myplot 绘制损耗函数曲线
.
.
yt= 'y_1(t)' ;
subplot(2,1,2); tplot(y1t,T,yt);
%调用绘图函数 tplot 绘制滤波器输出波形
%带通滤波器设计与实现
==================================================== fpl=440;fpu=560;fsl=275;fsu=900;
wp=[2*fpl/Fs,2*fpu/Fs];ws=[2*fsl/Fs,2*fsu/Fs];rp=0.1;rs=60; [N,wp]=ellipord(wp,ws,rp,rs);
%调用 ellipord 计算椭圆 DF阶
数 N和通带截止频率 wp
[B,A]=ellip(N,rp,rs,wp);
%调用 ellip 计算椭圆带通 DF系统函数
系数向量 B和 A
y2t=filter(B,A,st);
%滤波器软件实现
% 带通滤波器设计与实现绘图部分 figure(3);
subplot(2,1,1); myplot(B,A);
%调用绘图函数 myplot 绘制损耗函数曲线
;
yt= 'y_2(t)'
subplot(2,1,2); tplot(y2t,T,yt);
%调用绘图函数 tplot 绘制滤波器输出波形
%高通滤波器设计与实现
================================================ fp=890;fs=600;
.
.
wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60;
?指标(低通滤波器的
通、阻带边界频)
[N,wp]=ellipord(wp,ws,rp,rs);
%调用 ellipord 计算椭圆 DF阶
数 N和通带截止频率 wp
[B,A]=ellip(N,rp,rs,wp,
'high' ); %调用 ellip 计算椭圆带通 DF系
统函数系数向量 B 和 A
y3t=filter(B,A,st);
%滤波器软件实现
% 高低通滤波器设计与实现绘图部分 figure(4);
subplot(2,1,1); myplot(B,A);
%调用绘图函数 myplot 绘制损耗函数曲线
yt= 'y_3(t)'
;
subplot(2,1,2); tplot(y3t,T,yt);
%调用绘图函数 tplot 绘制滤波器输出波形
function myplot(B,A)
%时域离散系统损耗函数绘图
%B为系统函数分子多项式系数向量
%A为系统函数分母多项式系数向量
[H,W]=freqz(B,A,1000); m=abs(H);
plot(W/pi,20*log10(m/max(m)));grid
on;
.