完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
matlab下的数字信号处理实现示例
J3KdCnWx.pdf
(111.9 KB, 下载次数: 136
)
附录 C MATLAB 下的数字信号处理实现示例 本部分内容是本讲义中数据信号处理实验部分实验项目在 MatLab 下实现代码。之所以 提供这些代码,是希望通过研究以下代码,能够更快、更好地掌握用MatLab 进行数据信号 处理实验的方法;提高实验质量。希望同学们在阅读代码的时候,注意学习方法,在最短的 时间内熟悉MatLab,提高应用能力。示例中有些部分是实验项目中的内容实现,有些是一 些典型例题的实现。研究示例代码,倡导个性化编程是我们的目标,希望同学们能在在进行 实验项目的过程中提高MatLab 的应用能力;在学习MatLab 编程的同时加强对数字信号处 理有关实验项目的理解。 以下代码段均在 MatLab5.3 下调试通过,但是由于排版或其他一些原因,可能有部分代 码段不能得到正常结果。您可以在“http://202.38.75.33/dsp/matlab/”得到本讲义的修订内容, 同时可以在这个网址获取所有代码。 附录C1 信号、系统和系统响应 1、理想采样信号序列 (1)首先产生信号x(n),0<=n<=50 n=0:50; %定义序列的长度是50 A=444.128; %设置信号有关的参数 a=50*sqrt(2.0)*pi; T=0.001; %采样率 w0=50*sqrt(2.0)*pi; %ω符号在MatLab 中不能输入,用w 代替 x=A*exp(-a*n*T).*sin(w0*n*T); %pi 是MATLAB 定义的π,信号乘可采用“.*” close all %清除已经绘制的x(n)图形 subplot(3,1,1);stem(x); %绘制x(n)的图形 title(‘理想采样信号序列’); %设置结果图形的标题 (2)绘制信号x(n)的幅度谱和相位谱 k=-25:25; W=(pi/12.5)*k; X=x*(exp(-j*pi/12.5)).^(n’*k); magX=abs(X); %绘制x(n)的幅度谱 subplot(3,1,2);stem(magX);title(‘理想采样信号序列的幅度谱’); angX=angle(X); %绘制x(n)的相位谱 subplot(3,1,3);stem(angX) ; title (‘理想采样信号序列的相位谱’) (3)改变参数为: 1, 0.4, 2.0734, 1 0 A = α = Ω = T = n=0:50; %定义序列的长度是50 A=1; a=0.4; w0=2.0734; T=1; %设置信号有关的参数和采样率T x=A*exp(-a*n*T).*sin(w0*n*T); %pi 是MATLAB 定义的π,信号乘可采用“.*” close all %清除已经绘制的x(n)图形 subplot(3,1,1);stem(x); %绘制x(n)的图形 title(‘理想采样信号序列’); k=-25:25; W=(pi/12.5)*k; X=x*(exp(-j*pi/12.5)).^(n’*k); magX=abs(X); %绘制x(n)的幅度谱 subplot(3,1,2);stem(magX);title(‘理想采样信号序列的幅度谱’); angX=angle(X); %绘制x(n)的相位谱 subplot(3,1,3);stem(angX) ; title (‘理想采样信号序列的相位谱’) 2、单位脉冲序列 在 MatLab 中,这一函数可以用zeros 函数实现: n=1:50; %定义序列的长度是50 x=zeros(1,50); %注意:MATLAB 中数组下标从1 开始 x(1)=1;close all; subplot(3,1,1);stem(x);title(‘单位冲击信号序列’); k=-25:25; X=x*(exp(-j*pi/12.5)).^(n’*k); magX=abs(X); %绘制x(n)的幅度谱 subplot(3,1,2);stem(magX);title(‘单位冲击信号的幅度谱’); angX=angle(X); %绘制x(n)的相位谱 subplot(3,1,3);stem(angX) ; title (‘单位冲击信号的相位谱’) 3、矩形序列 n=1:5; 0x=sign(sign(10-n)+1); close all; subplot(3,1,1); stem(x);title(‘单位冲击信号序列’); k=-25:25; X=x*(exp(-j*pi/25)).^(n’*k); magX=abs(X); %绘制x(n)的幅度谱 subplot(3,1,2);stem(magX);title(‘单位冲击信号的幅度谱’); angX=angle(X); %绘制x(n)的相位谱 subplot(3,1,3);stem(angX) ; title (‘单位冲击信号的相位谱’) 4、特定冲击串 x(n) =δ (n) + 2.5δ (n ?1) + 2.5δ (n ? 2) +δ (n ? 3) n=1:50; %定义序列的长度是50 x=zeros(1,50); %注意:MATLAB 中数组下标从1 开始 x(1)=1; x(2)=2.5; x(3)=2.5; x(4)=1; close all; subplot(3,1,1);stem(x);title(‘单位冲击信号序列’); [此贴子已经被作者于2009-5-12 1:53:24编辑过]
|
|
相关推荐
|
|
谢谢了!!!
|
|
|
|
|
|
感谢分享~~
|
|
|
|
|
|
1145 浏览 1 评论
用udl里的字符串信息在局域网内其他电脑连接sql数据库为什么为出现连接失败拒绝访问?
2024 浏览 2 评论
为什么同一个队列引用的全局变量,运行在两个子vi中发现队列数据丢失了
1646 浏览 0 评论
1839 浏览 0 评论
关于labview2024版本的lvanlys.dll出错的问题
4379 浏览 3 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-29 09:01 , Processed in 0.741403 second(s), Total 82, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号