DSP(数字信号处理)实验报告1

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

本科学生实验报告

学号********* 姓名何胜金

学院物电学院专业、班级12电子

实验课程名称数字信号处理(实验)

教师及职称杨卫平

开课学期第三至第四学年下学期填报时间2015 年 3 月12 日

云南师范大学教务处编印

实验序号01 实验名称基本信号的产生

实验时间2015年3月12 实验室云南师范大学同析3栋数字信号处理实

验室

一.实验预习

1.实验目的

学习使用MATLAB产生基本信号、绘制信号波形、实现信号的基本运算,为信号分析和系统设计奠定基础。。

2.实验原理、实验流程或装置示意图

MATLAB提供了许多函数用于产生常用的基本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和周期方波等。这些基本信号是信号处理的基础。

1. 连续信号的产生

(1)阶跃信号

产生阶跃信号u(t)的MATLAB程序如下,运行结果如图1.1.1所

示。 t=-2:0.02:6; x=(t>=0); plot(t,x);

axis([-2,6,0,1.2]); 补充:

axis一般用来设置axes的样式,包括坐标轴范围,可读比例

等 axis([xmin xmax ymin ymax])

axis([xmin xmax ymin ymax zmin zmax cmin cmax]) 坐标轴设置

(2)指数信号

产生随时间衰减的指数信号x(t)=2*e^(-t)的MATLAB程序如下,运

行结果如图1.1.2所示。 t=0:0.001:5; x=2*exp(-1*t); plot(t,x);

(3)正弦信号

利用MATLAB提供的函数sin和cos可产生正弦和余弦信号。产生一

个幅度为2,频率为4Hz,相位为pi\6的正弦信号的MATLAB程序如下,运行结果如图1.1.3所示。 f0=4;

w0=2*pi*f0; t=0:0.001:1;

x=2*sin(w0*t+pi/6); plot(t,x);

(4)矩形脉冲信号

函数rectpulse(t)可产生高度为1、宽度为1、关于t=0对称的矩形脉冲信号。

函数rectpulse(t,w))可产生高度为1、宽度为w、关于t=0对称的矩形脉冲信号。

产生高度为1、宽度为4、延时2s的矩形脉冲信号的MATLAB程序如下,运行结果如图1.1.4所示。 t=-2:0.02:6;

x=rectpuls(t-2,4); plot(t,x);

(5)周期方波

函数square(w0*t)产生基本频率为w0(周期T=2*PI\w0)的周期方波。函数square(w0*t,DUTY))产生基本频率为w0(周期T=2*PI\w0)、占空比DUTY=t\T*100的周期方波。T为一个周期中信号为正的时间长度。t=T\2,DUTY=50,square(w0*t,50)等同于square(w0*t)。

产生一个幅度为1,基频为2Hz,占空比为50%的周期方波的MATLAB程序如下,运行结果如图1.1.5所示。 f0=2;

t=0:.0001:2.5; w0=2*pi*f0;

y=square(w0*t,50);%duty cycle=50% plot(t,y);axis([0,2.5,-1.5,1.5]);

(6)抽样函数

使用MATLAB提供的函数sin(x)可计算抽样信号想x(t)=sint/t,函数sin(x)的定义为sin(x)=sin(pi*x)\pi*x.产生x(t)=sint/t信号的MATLAB程序如下,运行结果如图1.1.6所示。 t=-10:1/500:10; x=sinc(t/pi); plot(t,x);

2. 离散信号的产生(1)单位脉冲序列和单位阶跃序列

函数ones(1,n)和zeros(1,n)可以生成单位脉冲序列和单位阶跃序列。函数ones(1,n)产生1行n列的由1组成的矩阵;函数zeros(1,n) 产生1行n列的由0组成的矩阵。

产生单位脉冲序列&[k-3]的MATLAB程序如下,运行结果如图1.1.7所

示。 k=-4:20;

x=[zeros(1,7),1,zeros(1,17)]; stem(k,x)

产生单位阶跃序列u[k-3]的MATLAB程序如下,运行结果如图1.1.8所示。 k=-4:20; x=[zeros(1,7),ones(1,18)]; stem(k,x)

(2)指数序列

产生离散序列x[k]=0.5(3\4)^k的MATLAB程序如下,运行结果如图1.1.9所示。k=-5:15;

x=0.3*(1/2).^k; stem(k,x);

(3)正弦序列

产生正弦序列sin(pi*k/3+pi\5)的MATLAB程序如下,运行结果如图1.1.10所示。k=-10:10; omega=pi/3;

x=0.5*sin(omega*k+pi/5); stem(k,x);

(4)离散周期方波

产生幅度为1、基频o=pi/4rad、占空比为50%的周期方波的MATLAB程序如下,运行结果如图1.1.11所示。 omega=pi/4; k=-10:10;

x=square(omega*k,50); stem(k,x);

(5)白噪声序列

白噪声序列在信号处理中是常用的序列。函数rand可产生在[0,1]区间均匀分布的白噪声序列,函数rand可产生均值为0,方差为1的高斯分布的白噪声序列。

N=20;k=0:N-1; x=rand(1,N) stem(k,x);

相关文档
最新文档