实验1多种离散时间信号产生
实验一常见离散信号的MATLAB产生和图形显示

实验一 常见离散信号的MATLA B 产生和图形显示 授课课时:2学时一、实验目的:(1)熟悉MATL A B 应用环境,常用窗口的功能和使用方法。
(2)掌握MATL A B 在时域内产生常用离散时间信号的方法。
(3)掌握离散信号的基本运算。
(4)掌握简单的绘图命令。
二、实验原理:(一)信号的表示和产生① 单位抽样序列⎩⎨⎧=01)(n δ 00≠=n n 如果在时间轴)(n δ上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ0≠=n k n参考程序:例1-1:)2010(()(<<-=n n n x )δclear all n1=-10;n2=20;n0=0;%在起点为n1,终点为n2的范围内,于n0处产生冲激。
n=n1:n2;%生成离散信号的时间序列x=[n==n0];%生成离散信号x (n)stem(n,x);%绘制脉冲杆图xlabel (' n');ylabel ('x(n)');%横坐标和纵坐标的标注说明。
title('Unit Sample Sequen c e');%图形上方标注图名axis([-10 20 0 1.2]);%确定横坐标和纵坐标的取值范围② 单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n 例1-2:)202((u )(<<-=n n n x )clear alln1=-2;n2=20;n0=0;n=n1:n2;%生成离散信号的时间序列x=[n>=n0];%生成离散信号x (n)stem(n,x,'filled ');xlabel ('n');ylabel ('x(n)');title('Unit step Sequen c e');axis([-2 20 0 1.2]);③ 正弦序列)sin()(ϕ+=wn A n x例1-3:一正弦信号的频率为1HZ ,振幅值幅度A 为1V ,在窗口显示2个周期的信号波形,并对该信号的一个周期进行32点采样获得离散信号并显示该连续信号和离散信号的波形。
实验一 离散时间信号的时域分析

实验一 离散时间信号的时域分析实验1 序列的产生1. 目的:熟悉C 语言产生和绘制,熟悉MATLAB 中产生信号和绘制信号的基本命令。
2. 具体实验:2.1 单位样本和单位阶跃序列。
Q1.1 运行程序P1.1 ,以产生单位样本序列u[n]并显示它。
答:如图1-1所示。
Q1.2 命令clf , axis , title , xlabel 和ylabel 的作用是什么? 答:clf :擦除当前图形窗口中的图形。
Axis :调整坐标轴X 轴Y 轴的范围。
Title:给绘制的图形加上标题。
Xlabel:给X 轴加上标注。
Ylabel: 给Y 轴加上标注。
Q1.3 修改程序P1.1 以产生带有延时11个样本的延迟单位样本序列ud[n]。
运行修改的程序并显示产生的序列。
答:如图1-2所示。
Q1.4修改程序P1.1 以产生单位步长序列s[n]。
运行修改的程序并显示产生的序列。
答:如图1-3所示。
Q1.5修改程序P1.1 以产生带有超前7个样本的延迟单位样本序列sd[n]。
运行修改的程序并显示产生的序列。
答:如图1-4所示。
Figure 1-2 The unit sample sequence ud[n]Figure 1-1 The shifted unit sample sequence u[n]单位样本序列公式如下所示:Time index nA m p l i t u d eUnit Sample Sequence u[n]Time index nA m p l i t u d eShifted Unit Sample Sequence ud[n]1 , n=0 1 , n=k δ[n]= δ[n-k]=0 , 0≠0 0 , 0≠kFigure 1-3 The unit step sequence s[n] Figure 1-4 The shifted unit step sequence sd[n]单位阶跃序列公式如下所示:1 , n ≥0 1 , n ≥k μ[n]= μ[n-k]=0 , n <0 0 , n <k2.2 指数信号Q1.6 运行程序P1.2 ,以产生复数值的指数序列。
数字信号处理实验指导书78447

数字信号处理实验指导书实验一 时域离散信号的产生一、实验目的1、了解常用时域离散信号及其特点;2、掌握MATLAB 程序的编程方法;3、熟悉MATLAB 函数的调用方法。
二、实验原理在时间轴上的离散点取值的信号,称为离散时间信号。
离散时间信号只在某些离散的瞬时给出函数值,而在其他时刻无定义。
它是时间上不连续按一定先后次序排列的一组数的集合,称为时间序列,用x(n)表示,n 取整数代表时间的离散时刻。
在MA TLAB 中用向量来表示一个有限长度的序列。
常用离散信号: 1、单位抽样序列10()(00n n n δδ =⎧⎧= ⎨⎨≠ ≠⎩⎩0001n=n 或n-n )=0n n 2、单位阶跃序列0110()(-)000n n u n u n n n n ≥ ≥⎧⎧= = ⎨⎨ < <⎩⎩00n 或n3、实指数序列()n x n a =4、复指数序列()()j t x n e αω+=5、正(余)弦序列0()sin()m x n U n ωθ=+6、随机序列在利用计算机进行系统的研究时,经常需要产生随机信号,MATLAB 提供一个工具函数rand 来产生随机信号。
7、周期序列()()x n x n N =+三、实验用函数1、stem功能:绘制二维图形。
调用格式:stem(n,x);n为横轴,x为纵轴的线性图形。
2、length功能:计算某一变量的长度或采样点数。
调用格式:N=length(t);计算时间向量t的个数并赋给变量N。
3、axis功能:限定图形坐标的范围。
调用格式:axis([x1,x2,y1,y2]);横坐标从x1—x2,纵坐标从y1—y2。
4、zeros功能:产生一个全0序列。
调用格式:x=zeros(1,n);产生n个0的序列。
5、ones功能:产生一个全1序列。
调用格式:y=ones(1,n);产生n个1的序列。
四、参考实例例1.1 用Matlab产生单位抽样序列。
%先建立函数impseq(n1,n2,n0)function [x,n]=impseq(n1,n2,n0)n=[n1:n2];x=[(n-n0)==0];%编写主程序调用该函数[x,n]=impseq(-2,8,2);stem(n,x)程序运行结果如图1-1所示:图1-1 单位抽样序列例1.2实数指数序列(运算符“.^”)Matlab程序如下:n=[0:10];x=0.9.^n;stem(n,x)程序运行结果如图1-2所示图1-2 实数指数序列例1.3复数指数序列((0.10.3)()(1010)j nx n en -+= -≤≤)Matlab 程序如下:n=[-10:10]; alpha=-0.1+0.3*j; x=exp(alpha*n); real_x=real(x); image_x=imag(x); mag_x=abs(x); phase_x=angle(x); subplot(2,2,1); stem(n,real_x) subplot(2,2,2); stem(n,image_x) subplot(2,2,3); stem(n,mag_x) subplot(2,2,4); stem(n,phase_x) 程序运行结果如图1-3所示图1-3 复数指数序列例1.4正、余弦序列(0()sin()m x n U n ωθ=+)Matlab 程序如下: n=[0:10];x=3*cos(0.1*pi*n+pi/3); stem(n,x)程序运行结果如图1-4所示图1-4 正、余弦序列例1.5随机序列rand(1,N)产生其元素在[0,1]之间均匀分布长度为N的随机序列randn(1,N)产生均值为0,方差为1,长度为N的高斯随机序列例1.6周期序列如何生成周期序列1、将一个周期复制p次;2、借助矩阵运算、matlab下标能力。
实验一 离散时间信号与系统响应

班 级 学号 姓 名 同组人 实验日期 室温 大气压 成 绩实验题目: 实验一 离散时间信号与系统响应 一、实验目的1.观察离散系统的频率响应和单位脉冲响应并学会其应用。
2.掌握用MATLAB 实现线性卷积的方法及差分方程的求解方法。
3.了解数字信号采样率转换过程中的频谱特征。
4.通过观察采样信号的混叠现象,进一步理解奈奎斯特采样频率的意义。
二、实验仪器计算机一台 MATLAB7.0软件三、实验原理在数字信号处理中,离散时间信号通常用序列{x(n)}表示。
离散时间系统在数学上定义为将输入序列x(n)映射成输出序列y(n)的唯一性变换或运算,亦即将一个序列变换成另一个序列的系统。
记为y(n)=T[x(n)],通常将上式表示成图()()[]x n y n T −−−→∙−−−→所示的框图。
算子T[∙]表示变换,对T[∙]加上种种约束条件,就可以定义出各类离散时间系统。
1.频率响应:在工程上进行时域分析和轨迹分析用频率响应法,它是分析和设计系统的一中有效经典的方法。
线性时不变系统输入输出关系y(n)=x(n)*h(n)。
H(ejw)是频率响应,离散时间系统的线性卷积,由理论学习我们可知,对于线性时不变离散系统,任意的输入信号()()()...(1)(1)(0)()(1)(1)...k x n x k n k x n n x n x n δδδδ∞=-∞=-=+-+++-+∑x (n )可以用δ(n )及其位移的线性组合来表示,即,当输入δ(n )时,系统的输出y(n)=h(n)。
2.卷积:y=conv(h,x),计算向量h 和x 的卷积,结果放在y 中。
由系统的线性移不变性质可以得到系统对x(n)的响应y(n)为()()()k y n x k h n k ∞=-∞=-∑,称为离散系统的线性卷积,简记为y(n)=x(n)*h(n),也就是说,通过系统的冲激响应,可以将输入信号与系统的冲激响应进行卷积运算,可求得系统的响应。
《数字信号处理》上机实验指导书

《数字信号处理》上机实验指导书实验1 离散时间信号的产生1.实验目的数字信号处理系统中的信号都是以离散时间形态存在,所以对离散时间信号的研究是数字信号处理的基本所在。
而要研究离散时间信号,首先需要产生出各种离散时间信号。
MATLAB 是一套功能强大的工程计算及数据处理软件,广泛应用于工业,电子,医疗和建筑等众多领域。
使用MATLAB软件可以很方便地产生各种常见的离散时间信号,而且它还具有强大的绘图功能,便于用户直观地输出处理结果。
通过本实验,学生将学习如何用MATLAB产生一些常见的离散时间信号,并通过MATLAB中的绘图工具对产生的信号进行观察,加深对常用离散信号的理解。
2.实验要求本实验要求学生运用MATLAB编程产生一些基本的离散时间信号,并通过MATLAB的几种绘图指令画出这些图形,以加深对相关教学内容的理解,同时也通过这些简单的函数练习了MATLAB的使用。
3.实验原理(1)常见的离散时间信号1)单位抽样序列,或称为离散时间冲激,单位冲激:?(n)???1?0n?0 n?0如果?(n)在时间轴上延迟了k个单位,得到?(n?k)即:?1n?k ?(n?k)??0n?0?2)单位阶跃序列n?0?1 u(n)?n?0?0在MATLAB中可以利用ones( )函数实现。
x?ones(1,N);3)正弦序列x(n)?Acos(?0n??)这里,A,?0,和?都是实数,它们分别称为本正弦信号x(n)的振幅,角频率和初始相位。
f0??02?为频率。
x(n)?ej?n4)复正弦序列5)实指数序列x(n)?A?n(2)MATLAB编程介绍MATLAB是一套功能强大,但使用方便的工程计算及数据处理软件。
其编程风格很简洁,没有太多的语法限制,所以使用起来非常方便,尤其对初学者来说,可以避免去阅读大量的指令系统,以便很快上手编程。
值得注意得就是,MATLAB中把所有参与处理的数据都视为矩阵,并且其函数众多,希望同学注意查看帮助,经过一段时间的训练就会慢慢熟练使用本软件了。
DSP实验报告--离散时间信号与系统的时、频域表示-离散傅立叶变换和z变换-数字滤波器的频域分析和实现-数字

南京邮电大学实验报告实验名称:离散时间信号与系统的时、频域表示离散傅立叶变换和z变换数字滤波器的频域分析和实现数字滤波器的设计课程名称数字信号处理A(双语) 班级学号B13011025姓名陈志豪开课时间2015/2016学年,第1学期实验名称:离散时间信号与系统的时、频域表示实验目的和任务:熟悉Matlab基本命令,理解和掌握离散时间信号与系统的时、频域表示及简单应用。
在Matlab环境中,按照要求产生序列,对序列进行基本运算;对简单离散时间系统进行仿真,计算线性时不变(LTI)系统的冲激响应和卷积输出;计算和观察序列的离散时间傅立叶变换(DTFT)幅度谱和相位谱。
实验内容:基本序列产生和运算:Q1.1~1.3,Q1.23,Q1.30~1.33离散时间系统仿真:Q2.1~2.3LTI系统:Q2.19,Q2.21,Q2.28DTFT:Q3.1,Q3.2,Q3.4实验过程与结果分析:Q1.1运行程序P1.1,以产生单位样本序列u[n]并显示它。
clf;n = -10:20;u = [zeros(1,10) 1 zeros(1,20)];stem(n,u);xlabel('Time index n');ylabel('Amplitude');title('Unit Sample Sequence');axis([-10 20 0 1.2]);Q1.2 命令clf,axis,title,xlabel和ylabel命令的作用是什么?答:clf命令的作用:清除图形窗口上的图形;axis命令的作用:设置坐标轴的范围和显示方式;title命令的作用:给当前图片命名;xlabel命令的作用:添加x坐标标注;ylabel c命令的作用:添加y坐标标注;Q1.3修改程序P1.1,以产生带有延时11个样本的延迟单位样本序列ud[n]。
运行修改的程序并显示产生的序列。
clf;n = -10:20;u = [zeros(1,21) 1 zeros(1,9)];stem(n,u);xlabel('Time index n');ylabel('Amplitude');title('Unit Sample Sequence');axis([-10 20 0 1.2]);Q1.23修改上述程序,以产生长度为50、频率为0.08、振幅为2.5、相移为90度的一个正弦序列并显示它。
时域离散信号实验报告(3篇)

第1篇一、实验目的1. 理解时域离散信号的基本概念和特性。
2. 掌握时域离散信号的表示方法。
3. 熟悉常用时域离散信号的产生方法。
4. 掌握时域离散信号的基本运算方法。
5. 通过MATLAB软件进行时域离散信号的仿真分析。
二、实验原理时域离散信号是指在时间轴上取离散值的一类信号。
这类信号在时间上不连续,但在数值上可以取到任意值。
时域离散信号在数字信号处理领域有着广泛的应用,如通信、图像处理、语音处理等。
时域离散信号的基本表示方法有:1. 序列表示法:用数学符号表示离散信号,如 \( x[n] \) 表示离散时间信号。
2. 图形表示法:用图形表示离散信号,如用折线图表示序列。
3. 时域波形图表示法:用波形图表示离散信号,如用MATLAB软件生成的波形图。
常用时域离散信号的产生方法包括:1. 单位阶跃信号:表示信号在某个时刻发生突变。
2. 单位冲激信号:表示信号在某个时刻发生瞬时脉冲。
3. 正弦信号:表示信号在时间上呈现正弦波形。
4. 矩形脉冲信号:表示信号在时间上呈现矩形波形。
时域离散信号的基本运算方法包括:1. 加法:将两个离散信号相加。
2. 乘法:将两个离散信号相乘。
3. 卷积:将一个离散信号与另一个离散信号的移位序列进行乘法运算。
4. 反褶:将离散信号沿时间轴翻转。
三、实验内容1. 实验一:时域离散信号的表示方法(1)使用序列表示法表示以下信号:- 单位阶跃信号:\( u[n] \)- 单位冲激信号:\( \delta[n] \)- 正弦信号:\( \sin(2\pi f_0 n) \)- 矩形脉冲信号:\( \text{rect}(n) \)(2)使用图形表示法绘制以上信号。
2. 实验二:时域离散信号的产生方法(1)使用MATLAB软件生成以下信号:- 单位阶跃信号- 单位冲激信号- 正弦信号(频率为1Hz)- 矩形脉冲信号(宽度为2)(2)观察并分析信号的波形。
3. 实验三:时域离散信号的基本运算(1)使用MATLAB软件对以下信号进行加法运算:- \( u[n] \)- \( \sin(2\pi f_0 n) \)(2)使用MATLAB软件对以下信号进行乘法运算:- \( u[n] \)- \( \sin(2\pi f_0 n) \)(3)使用MATLAB软件对以下信号进行卷积运算:- \( u[n] \)- \( \sin(2\pi f_0 n) \)(4)使用MATLAB软件对以下信号进行反褶运算:- \( u[n] \)4. 实验四:时域离散信号的仿真分析(1)使用MATLAB软件对以下系统进行时域分析:- 系统函数:\( H(z) = \frac{1}{1 - 0.5z^{-1}} \)(2)观察并分析系统的单位冲激响应。
数字信号处理实验一

数字信号处理实验一实验目的:掌握利用Matlab产生各种离散时间信号,实现信号的相加、相乘及卷积运算实验函数:参考课本77-19页,注意式(2.11.1)的表达与各matlab子函数间的关系。
1、stem(x,y) % 绘制以x为横轴,y为纵轴的离散序列图形2、[h ,t] = impz(b, a) % 求解数字系统的冲激响应h,取样点数为缺省值[h, t] = impz(b, a, n) % 求解数字系统的冲激响应h,取样点数为nimpz(b, a) % 在当前窗口用stem(t, h)函数出图3、[h ,t] = dstep(b, a) % 求解数字系统的阶跃响应h,取样点数为缺省值[h, t] = dstep (b, a, n) % 求解数字系统的阶跃响应h,取样点数为ndstep (b, a) % 在当前窗口用stairs(t, h)函数出图4、y = filter(b,a,x) % 在已知系统差分方程或转移函数的情况下求系统输出实验原理:一、常用的时域离散信号及其程序1、产生单位抽样函数δ(n)n1 = -5;n2 = 5;n0 = 0;n = n1:n2;x = [n==n0]; % x在n=n0时为1,其余为0stem(n,x,'filled'); %filled:序列圆心处用实心圆表示axis([n1,n2,0,1.1*max(x)])title('单位抽样序列')xlabel('time(n)')ylabel('Amplitude:x(n)')2、产生单位阶跃序列u(n)n1 = -2;n2 = 8;n0 = 0;n = n1:n2;x = [n>=n0]; % x在n>=n0时为1,其余为0stem(n,x,'filled');axis([n1,n2,0,1.1*max(x)])title('单位阶跃序列')xlabel('time(n)')ylabel('Amplitude:x(n)')3、复指数序列复指数序列的表示式为()(),00,0j n e n x n n σω+⎧≥⎪=⎨<⎪⎩,当0ω=时,()x n 为实指数序列;当0σ=时,()x n 为虚指数序列,即()()cos sin j n e n j n ωωω=+,即其实部为余弦序列,虚部为正弦序列。
实验一 离散时间信号的产生

实验一 离散时间信号的产生1. 实验目的数字信号处理系统中的信号都是以离散时间形态存在的,所以对离散时间信号的研究是数字信号处理的基本所在。
而要研究离散时间信号,首先需要产生各种离散时间信号。
使用MATLAB 软件 很方便的产生各种常见的离散时间信号,而且它还有强大的绘图功能,便于用户直接地处理输出结果。
2. 实验原理离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。
离散序列通常用x(n)来表示,自变量必须是整数,常见的离散时间信号如下:(1) 单位冲激序列⎩⎨⎧=01)(n δ 00≠=n n如果)(n δ在时间轴上延迟了k 个单位,)(k n -δ即:⎩⎨⎧=-01)(k n δ 0≠=n k n长度为N 的单位冲激序列δ(n)可以通过下面的MATLAB 命令获得。
n=-(N-1):N-1x=[zeros(1,N-1) 1 zeros(1,N-1)];setm(n,x)延迟K 个采样点的长度为N 的单位冲激序列δ(N-k )(k<N)可以用下面的命令获得: n=-(N-1):N-1x=[zeros(1,M) 1 zeros(1,N-M-1)];setm(n,y)(2)单位阶跃序列⎩⎨⎧01)(n u 00<≥n n 长度为N 的单位阶跃序列u (n)可以通过下面的MA TLAB 命令获得。
n=-(N-1):N-1x=[zeros(1,N-1) ones(1,N)];setm(n,x)延迟的单位阶跃序可以用类似于单位冲激信号的方法产生。
(3)矩形序列R N =u(n)-u(n-N)(4)正弦序列x (n ) = A cos(ωn +φ).这里A ,ω,φ都是实数分别为正弦信号的振幅,角频率,和初始相位,可以用下面的命令获得:n=0:N-1x=A*cos(2*pi*f*n/Fs+phase)(5) 单边指数序列:n a n x =)(u (n) 长度为N 的单边指数序列可以通过下面的MA TLAB 命令实现n a x N n .^1:0=-=setm(n,x)(6)复指数序列3实验内容(1)绘制程序产生单位冲激序列⎩⎨⎧=01)(n δ00≠=n n 及δ(n-“学号后两位”)并绘出其图形>> n=-10:10;>> x=[zeros(1,10),1,zeros(1,10)];>> stem(n,x)>> title('单位冲激序列'); >> xlabel('n');ylabel('x(n)');>> n=0:50;>> y=[zeros(1,40),1,zeros(1,10)];>>stem(n,y);>> title('单位冲激采样后的序列');>> xlabel('n');ylabel('y(n)');(2)绘制程序产生单位阶跃信号⎩⎨⎧01)(n u 00<≥n n 及u(n-“学号后两位”)及u(n)- u(n-“学号后两位”),并绘出其图形。
离散时间信号的时域分析实验报告

离散时间信号的时域分析实验报告实验名称:离散时间信号的时域分析⼀、实验⽬的1.学会⽤MATLAB在时域中产⽣⼀些基本的离散时间信号,并对这些信号进⾏⼀些基本的运算。
2.熟悉MATLAB中产⽣信号和绘制信号的基本命令。
⼆、实验内容1.在载波信号xH[n]和调制信号xL[n]采⽤不同频率、不同调制指数m的情况下,运⾏程序P1.6,以产⽣振幅调制信号y[n]。
2.编写matlab程序,以产⽣图1.1和图1.2所⽰的⽅波和锯齿波序列,并将序列绘制出来。
三、主要算法与程序1.n=0:100;m=0.6;fH=0.2;fL=0.02;xH=sin(2*pi*fH*n);xL=sin(2*pi*fL*n);y=(1+m*xL).*xH;stem(n,y);grid;xlabel('时间序列');ylabel('振幅');通过改变m,fH和fL来产⽣不同情况下的振幅调制信号。
2.画出图⼆:n=0:1:30;y=3*square(n*pi/5,60);stem(n,y),grid onaxis([0,30,-4,4]);xlabel('时间序号n');ylabel('振幅');为画出图三,将占空⽐由图⼆的60改为30。
画出图四:n=0:1:50;y=2*sawtooth(n*pi/10,1);stem(n,y),grid onaxis([0,50,-2,2]);xlabel('时间序号n');ylabel('振幅');为画出图五,将图四中从-1到1的范围由1改为0.5。
四、实验结果与分析图⼀确定了数值:m=0.6,fH=0.2,fL=0.02,绘出图像。
图⼆图三图四图五五、实验⼩结通过这次实验,我熟悉MATLAB中产⽣信号和绘制信号的基本命令,学会⽤MATLAB在时域中产⽣⼀些基本的离散时间信号,并对这些信号进⾏⼀些基本的运算。
实验一 离散时间信号与系统的傅里叶分析

电子信息工程系实验报告课程名称:数字信号处理成绩:实验项目名称:实验1 离散时间信号与系统的傅里叶分析时间:指导教师(签名):班级:电信092 姓名:XXX 学号:910706201实验目的:用傅里叶变换对离散时间信号和系统进行频域分析。
实验环境:计算机、MATLAB软件实验原理:对信号进行频域分析即对信号进行傅里叶变换。
对系统进行频域分析即对其单位脉冲响应进行傅里叶变换,得到系统的传输函数;也可由差分方程经过傅里叶变换直接求其传输函数,传输函数代表的就是频率响应特性。
而传输函数是w的连续函数,计算机只能计算出有限个离散频率点的传输函数值,故可在0~2∏之间取许多点,计算这些点的传输函数的值,并取它们的包络,所得包络即所需的频率特性。
实验内容和步骤:1、已知系统用下面差分方程描述:y(n)=x(n)+ay(n-1),试在a=0.95和a=0.5 两种情况下用傅立叶变换分析系统的频率特性。
要求写出系统的传输函数,并打印|H(e jω)|~ω曲线。
解:B=1;A=[1,-0.95]; [H,w]=freqz(B,A,'whole');subplot(1,3,1);plot(w/pi,abs(H),'linewidth',2);grid on;xlabel('\omega/\pi');ylabel('|H(e^j^\omega)|');title('幅频响应特性');axis([0,2,0,2.5]);B=1;A=[1,-0.5];[H,w]=freqz(B,A,'whole');subplot(1,3,3);plot(w/pi,abs(H),'linewidth',2);grid on;xlabel('\omega/\pi');ylabel('|H(e^j^\omega)|');title('幅频响应特性');axis([0,2,0,2.5]);图形如下图1、2所示:图1 a=0.95时的幅频响应特性图2 a=0.5时的幅频响应特性2、已知两系统分别用下面差分方程描述: y1(n)=x(n)+x(n-1) y2(n)=x(n)-x(n-1)试分别写出它们的传输函数,并分别打印|H(e jω)| ~ω曲线。
硕士信号处理实验报告(3篇)

第1篇一、实验背景随着信息技术的飞速发展,数字信号处理(DSP)技术已成为通信、图像处理、语音识别等领域的重要工具。
本实验旨在通过一系列实验,加深对数字信号处理基本原理和方法的理解,提高实际应用能力。
二、实验目的1. 理解数字信号处理的基本概念和原理。
2. 掌握常用信号处理算法的MATLAB实现。
3. 培养分析和解决实际问题的能力。
三、实验内容本实验共分为五个部分,具体如下:1. 离散时间信号的基本操作(1)实验目的:熟悉离散时间信号的基本操作,如加法、减法、乘法、除法、延时、翻转等。
(2)实验步骤:- 使用MATLAB生成两个离散时间信号。
- 对信号进行基本操作,如加法、减法、乘法、除法、延时、翻转等。
- 观察并分析操作结果。
2. 离散时间系统的时域分析(1)实验目的:掌握离散时间系统的时域分析方法,如单位脉冲响应、零状态响应、零输入响应等。
(2)实验步骤:- 使用MATLAB设计一个离散时间系统。
- 计算系统的单位脉冲响应、零状态响应和零输入响应。
- 分析系统特性。
(1)实验目的:掌握离散时间信号的频域分析方法,如快速傅里叶变换(FFT)、离散傅里叶变换(DFT)等。
(2)实验步骤:- 使用MATLAB生成一个离散时间信号。
- 对信号进行FFT和DFT变换。
- 分析信号频谱。
4. 数字滤波器的设计与实现(1)实验目的:掌握数字滤波器的设计与实现方法,如巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器等。
(2)实验步骤:- 使用MATLAB设计一个低通滤波器。
- 使用窗函数法实现滤波器。
- 对滤波器进行性能分析。
5. 信号处理在实际应用中的案例分析(1)实验目的:了解信号处理在实际应用中的案例分析,如语音信号处理、图像处理等。
(2)实验步骤:- 选择一个信号处理应用案例。
- 分析案例中使用的信号处理方法。
- 总结案例中的经验和教训。
四、实验结果与分析1. 离散时间信号的基本操作实验结果表明,离散时间信号的基本操作简单易懂,通过MATLAB可以实现各种操作,方便快捷。
实验一 常见离散信号的MATLAB产生和图形显示

实验一 常见离散信号的MATLAB 产生和图形显示授课课时:2学时一、实验目的:(1)熟悉MATLAB 应用环境,常用窗口的功能和使用方法。
(2)掌握MATLAB 在时域内产生常用离散时间信号的方法。
(3)掌握离散信号的基本运算。
(4)掌握简单的绘图命令。
二、实验原理:(一)信号的表示和产生① 单位抽样序列⎩⎨⎧=01)(n δ 00≠=n n如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ≠=n k n 参考程序:例1-1:)2010(()(<<-=n n n x )δclear all n1=-10;n2=20;n0=0;%在起点为n1,终点为n2的范围内,于n0处产生冲激。
n=n1:n2;%生成离散信号的时间序列x=[n==n0];%生成离散信号x(n)stem(n,x);%绘制脉冲杆图xlabel(' n');ylabel('x(n)');%横坐标和纵坐标的标注说明。
title('Unit Sample Sequence');%图形上方标注图名axis([-10 20 0 1.2]);%确定横坐标和纵坐标的取值范围② 单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n 例1-2:)202((u )(<<-=n n n x )clear alln1=-2;n2=20;n0=0;n=n1:n2;%生成离散信号的时间序列x=[n>=n0];%生成离散信号x(n)stem(n,x,'filled');xlabel('n');ylabel('x(n)');title('Unit step Sequence');axis([-2 20 0 1.2]);③ 正弦序列)sin()(ϕ+=wn A n x例1-3:一正弦信号的频率为1HZ ,振幅值幅度A 为1V ,在窗口显示2个周期的信号波形,并对该信号的一个周期进行32点采样获得离散信号并显示该连续信号和离散信号的波形。
实验1 离散时间信号与系统

长沙理工大学计通学院通信工程系胡双红编数字信号处理A 实验报告实验项目名称:离散时间信号与系统学院:______计算机与通信工程____ 专业:______ _通信工程 _________ 学号:______20xxxxxxxxxx_______ 班级:______ 通信1x-x_________ 报告人:________ xx_____________ 指导老师:___ 胡双红 _ _______ 实验时间:_______201x-x-x________实验目的:1、熟悉常见离散时间信号的产生方法;2、熟悉离散时间系统的单位脉冲响应和单位阶跃响应的求解方法;3、熟悉离散时间信号经过离散时间系统的响应的求解方法。
实验内容:已知离散时间系统差分方程为y(n)-0.5y(n-1)+0.06y(n-2)=x(n)+x(n-1),求1、该系统的单位脉冲响应并绘图;2、该系统的单位阶跃响应并绘图;3、已知x(n)=可自己指定用filter函数经过系统的响应并绘图;4、用convwthn函数求系统响应并绘图。
实验平台:MATLAB集成软件**实验流程:设计流程:1、定义a,b2、用impseq函数生成0~100的单位脉冲函数3、用filter函数表示x(n)的系统响应并画图4、用stepseq函数生成0~100的单位阶跃函数5、用filter函数表示x(n)的系统响应并画图6、生成一个0~100的函数x(n)= exp(-0.5*n)7、用convwthn函数做出系统单位脉冲相应和x(n)= exp(-0.5*n)的卷积和得到系统响应并画出卷积和前101点图形8、用filter函数表示x(n)的系统响应实验代码:(1)b=[1,1];a=[1,-0.5,0.06];n=[-10:25];impz(b,a,n);title('系统的单位脉冲响应');xlabel('n');ylabel('h(n)');(2)n=-10:25;x=(n>=0);b=[1,1];a=[1,-0.5,0.06];s=filter(b,a,x);stem(n,s)title('单位阶跃响');xlable('n');ylable('s(n)');(3)a=[1,-0.5,0.06];b=[1,1];n=-10:120;x1=exp(-0.05*n).*sin(0.1*pi*n+pi/3);s1=filter(b,a,x1);stem(n,s1);xlabel('n');ylabel('s1(n)');(4)a=[1,-0.5,0.06];b=[1,1];n=-20:120;h=impz(b,a,n);x1=exp(-0.05*n).*sin(0.1*pi*n+pi/3); nyb=n(1)+n(1);nye=n(length(x1))+n(length(h));m=[nyb:nye];y=conv(x1,h);stem(m,y);title('系统响应');xlabel('m');ylabel('y(m)');实验结果:单位脉冲响应单位阶跃响应x(n)用filter函数经过系统的响应convwthn函数求系统响应实验心得:实验心得:熟悉了常见离散时间信号的产生方法、离散时间系统的单位脉冲响应和单位阶跃响应的求解方法;熟悉离散时间信号经过离散时间系统的响应的求解方法。
数字信号处理实验指导

实验一 离散时间信号与系统的时域分析(基础验证型)1.实验目的(1)熟悉离散时间信号的产生与基本运算。
(2)熟悉离散时间系统的时域特性。
(3)利用卷积方法观察分析系统的时域特性。
2.实验原理(1)典型离散时间信号单位样本序列(通常称为离散时间冲激或单位冲激)用[]n δ表示,其定义为1,0[]0,0n n n δ=⎧=⎨≠⎩(1.1) 单位阶跃序列用[]n μ表示,其定义为1,0[]0,0n n n μ≥⎧=⎨<⎩ (1.2) 指数序列由 []n x n A α= (1.3)给定。
其中A 和α可以是任意实数或任意复数,表示为00(),j j e A A e σωφα+==式(1.3)可改写为 0000()00[]cos()sin()n j n n n x n A e A e n j A e n σωφσσωφωφ++==+++ (1.4) 带有常数振幅的实正弦序列形如0[]cos()x n A n ωφ=+ (1.5)其中A ,0ω和φ是实数。
在式(1.4)和(1.5)中,参数A ,0ω和φ分别称为正弦序列[]x n 的振幅、角频率和初始相位。
002f ωπ=称为频率。
(2)序列的基本运算长度N 的两个序列[]x n 和[]h n 的乘积,产生长度也为N 的序列[]y n[][][]y n x n h n =⋅ (1.6)长度为N 的两个序列[]x n 和[]h n 相加,产生长度也为N 的序列[]y n[][][]y n x n h n =+ (1.7)用标量A 与长度为N 的序列[]x n 相乘,得到长度为N 的序列[]y n[][]y n A x n =⋅ (1.8)无限长序列[]x n 通过时间反转,可得到无限长序列[]y n[][]y n x n =- (1.9)无限长序列[]x n 通过M 延时,可得到无限长序列[]y n[][]y n x n M =- (1.10)若M 是一个负数,式(1.10)运算得到序列[]x n 的超前。
数字信号处理实验指导书

《数字信号处理》实验指导书编写:刘梦亭审核:司玉娟阎维和适用专业:电子信息工程电子信息科学与技术通信工程等电子信息与工程系2009年9月目录实验一:离散时间信号分析 (1)实验二:离散时间系统分析 (3)实验三:离散系统的Z域分析 (6)实验四:FFT频谱分析及应用 (9)实验五:IIR数字滤波器的设计 (12)实验六:FIR数字滤波器的设计 (16)附录: MATLAB基本操作及常用命令 (20)实验一:离散时间信号分析实验学时:2学时 实验类型:验证 实验要求:必修 一、实验目的1) 掌握离散卷积计算方法; 2) 学会差分方程的迭代解法;3) 了解全响应、零输入响应、零状态响应和初始状态的物理意义和具体求法; 二、实验内容 1、信号的加数学描述 )()()(21n x n x n x += MATLAB 实现 21X X X +=设[ x10=[1 0.7 0.4 0.1 0]; x20=[0.1 0.3 0.5 0.7 0.9 1];]2、信号的乘数学描述 )()()(21n x n x n x *= MATLAB 实现 2.1X X X *=设[ x10=[1 0.7 0.4 0.1 0]; x20=[0.1 0.3 0.5 0.7 0.9 1];]3、计算卷积用MATLAB 计算序列{-2 0 1 –1 3}和序列{1 2 0 -1}的离散卷积。
首先用手工计算,然后用MATLAB 编程验证。
三、实验组织运行要求1、学生在进行实验前必须进行充分的预习,熟悉实验内容;2、学生根据实验要求,读懂并理解相应的程序;3、学生严格遵守实验室的各项规章制度,注意人身和设备安全,配合和服从实验室人员管理;4、教师在学生实验过程中予以必要的辅导,独立完成实验;5、采用集中授课形式。
四、实验条件1、具有WINDOWS 98/2000/NT/XP 操作系统的计算机一台; 2.、MATLAB 编程软件。
《数字信号处理》实验讲义(信息计算)

《数字信号处理》实验指导书实验一 常见离散信号的产生一、实验目的1. 加深对离散信号的理解。
2. 掌握典型离散信号的Matlab 产生和显示。
二、实验原理及方法在MATLAB 中,序列是用矩阵向量表示,但它没有包含采样信息,即序列位置信息,为此,要表示一个序列需要建立两个向量;一是时间序列n,或称位置序列,另一个为取值序列x ,表示如下: n=[…,-3,-2,-1,0,1,2,3,…]x=[…,6,3,5,2,1,7,9,…]一般程序都从0 位置起始,则x= [x(0), x(1), x(2),…]对于多维信号需要建立矩阵来表示,矩阵的每个列向量代表一维信号。
数字信号处理中常用的信号有指数信号、正弦信号、余弦信号、方波信号、锯齿波信号等,在MATLAB 语言中分别由exp, sin, cos, square, sawtooth 等函数来实现。
三、实验内容1. 用MATLAB 编制程序,分别产生长度为N(由输入确定)的序列:①单位冲击响应序列:()n δ可用MATLAB 中zeros 函数来实现; ②单位阶跃序列:u(n)可用MATLAB 中ones 函数来实现; ③正弦序列:()sin()x n n ω=; ④指数序列:(),nx n a n =-∞<<+∞⑤复指数序列:用exp 函数实现()0()a jb nx n K e+=,并给出该复指数序列的实部、虚部、幅值和相位的图形。
(其中00.2,0.5,4,40a b K N =-===.)参考流程图:四、实验报告要求1. 写出实验程序,绘出单位阶跃序列、单位阶跃序列、正弦序列、指数序列的图形以及绘 出复指数序列的实部、虚部、幅值和相位的图形。
2. 序列信号的实现方法。
3. 在计算机上实现正弦序列0()sin(2)x n A fn πϕ=+。
实验二 离散信号的运算一、实验目的1. 掌握离散信号的时域特性。
2. 用MATLAB 实现离散信号的各种运算。
数字信号处理实验报告

实验报告课程名称:数字信号处理授课班级:学号:姓名:指导老师:实验一离散时间信号及系统的时域分析实验类别:基础性实验1实验目的:(1)了解MA TLAB 程序设计语言的基本特点,熟悉MA TLAB软件运行环境。
(2)熟悉MA TLAB中产生信号和绘制信号的基本命令,学会用MA TLAB在时域中产生一些基本的离散时间信号,并对这些信号进行一些基本的运算。
(3)通过MA TLAB仿真一些简单的离散时间系统,并研究它们的时域特性。
(4)通过MA TLAB进行卷积运算,利用卷积方法观察分析系统的时域特性。
2. 实验报告要求●简述实验原理及目的。
●结合实验中所得给定典型序列幅频特性曲线,与理论结果比较,并分析说明误差产生的原因以及用FFT作谱分析时有关参数的选择方法。
●记录调试运行情况及所遇问题的解决方法。
3.实验内容:思考题:9.2.1 运行程序P9.2.1,哪个参数控制该序列的增长或衰减:哪个参数控制该序列的振幅?若需产生实指数序列,应对程序作何修改?9.2.2运行程序P9.2.1,该序列的频率是多少?怎样改变它?哪个参数控制该序列的相位?哪个参数可以控制该序列的振幅?该序列的周期是多少?9.2.3 运行程序P9.2.3,对加权输入得到的y(n)与在相同权系数下输出y1(n)和y2(n)相加得到的yt(n)进行比较,这两个序列是否相等?该系统是线性系统吗?9.2.4 假定另一个系统为y(n)=x(n)x(n-1)修改程序,计算这个系统的输出序列y1(n),y2(n)和y(n)。
比较有y(n)和yt(n)。
这两个序列是否相等?该系统是线性系统吗?(提高部分)9.2.5运行程序P9.2.4,并比较输出序列y(n)和yd(n-10)。
这两个序列之间有什么关系?该系统是时不变系统吗?9.2.6 考虑另一个系统:修改程序,以仿真上面的系统并确定该系统是否为时不变系统。
(选做)n = 0:40; D = 10;a = 3.0;b = -2;x = a*cos(2*pi*0.1*n) + b*cos(2*pi*0.4*n);[x1,n1]=sigmult(n,n,x,n)[x2,n2]=sigshift(x,n,1)[y,ny1]= sigadd(x1,n1,x2,n2)[y1,ny11]= sigshift(y,ny1,D)[sx,sn]= sigshift(x,n,D)[sx1,sn1]=sigmult(n,n, sx,sn)[sx2,sn2]=sigshift(sx,sn,1)[y2,ny2]= sigadd(sx1,sn1,sx2,sn2)D= sigadd(y1,ny11,y2,ny22)六、实验心得体会:实验时间批阅老师实验成绩实验二 FFT 实现数字滤波实验类别:提高性实验 1.实验目的(1) 通过这一实验,加深理解FFT 在实现数字滤波(或快速卷积)中的重要作用,更好的利用FFT 进行数字信号处理。
实验1 常见离散信号产生和实现

(clf;--clc;clear;)实验1 常见离散信号产生和实现一、实验目的:1、加深对常用离散信号的理解;2、掌握matlab 中一些基本函数的建立方法。
二:matlab 使用1)创建M 文件 File-→New-→M-file 2)运行 Debug->run注:在试验过程中若有某些函数不懂,可以通过Help->search->输入要查询的函数名即可二、实验原理:1.单位抽样序列⎩⎨⎧=01)(n δ≠=n n 在MATLAB 中可以利用zeros()函数实现。
;1)1();,1(==x N zeros x如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ≠=n kn 2.单位阶越序列⎩⎨⎧01)(n u00<≥n n 在MATLAB 中可以利用ones()函数实现。
);,1(N ones x = %一个长度为N 的零矩阵3.正弦序列)/2sin()(ϕπ+=Fs fn A n x在MATLAB 中)/***2sin(*1:0fai Fs n f pi A x N n +=-=4.复指数序列n j e r n x ϖ⋅=)(在MATLAB 中)**exp(1:0n w j r x N n ⋅=-=5.指数序列n a n x =)(在MATLAB 中na x N n .^1:0=-=三、实验内容实现和图形生成1、五种基本函数的生成程序如下:(1)、单位抽样序列% 单位抽样序列和延时的单位抽样序列 clf; % Clear current figure window n=0:10;x1=[1 zeros(1,10)];x2=[zeros(1,5) 1 zeros(1,5)]; subplot(1,2,1);stem(n,x1);xlabel ('时间序列n');ylabel('振幅');title('单位抽样序列x1'); subplot(1,2,2);stem(n,x2); xlabel('时间序列n');ylabel('振幅');title('延时了5的单位抽样序列');(2)、单位阶越序列clf;n=0:10;u=[ones(1,11)];stem(n,u);xlabel ('时间序列n');ylabel('振幅');title('单位阶越序列');所得的图形如下所示:(3)正弦函数clf;n=1:30;x=2*sin(pi*n/6+pi/3);stem(n,x); xlabel ('时间序列n');ylabel('振幅');title('正弦函数序列x=2*sin(pi*n/6+pi/3)');(4)、复指数序列clf;n=1:30;x=2*exp(j*3*n);stem(n,x); xlabel ('时间序列n');ylabel('振幅');title('复指数序列x=2*exp(j*3*n)'); 图形如下:(5)指数序列 clf; n=1:30; x=1.2.^n;stem(n,x); xlabel ('时间序列n');ylabel('振幅');title('指数序列x=1.2.^n');2、绘出信号zne n x =)(,当6)12/1(πjz +-=、6)12/1(πjz +=时、121=z 、62πjz +=、6πjz =时的信号实部和虚部图;程序如下: clf;z1=-1/12+j*pi/6;z2=1/12+j*pi/6;z3=1/12;z4=2+j*pi/6;z5=j*pi/6; n=0:20;x1=exp(z1*n);x2=exp(z2*n); x3=exp(z3*n);x4=exp(z4*n); x5=exp(z5*n); subplot(5,2,1);stem(n,real(x1)); xlabel ('时间序列n');ylabel('实部');title('复指数z1=-1/12+j*pi/6时序列实部'); subplot(5,2,2);stem(n,imag(x1)); xlabel ('时间序列n');ylabel('虚部');title('复指数z1=-1/12+j*pi/6时序列虚部'); subplot(5,2,3);stem(n,real(x2)); xlabel ('时间序列n');ylabel('实部');title('复指数z2=1/12+j*pi/6时序列实部');subplot(5,2,4);stem(n,imag(x2)); xlabel ('时间序列n');ylabel('虚部');title('复指数z2=1/12+j*pi/6时序列虚部'); subplot(5,2,5);stem(n,real(x3)); xlabel ('时间序列n');ylabel('实部');title('复指数z3=1/12时序列实部'); subplot(5,2,6);stem(n,imag(x3)); xlabel ('时间序列n');ylabel('虚部');title('复指数z3=1/12时序列虚部'); subplot(5,2,7);stem(n,real(x4)); xlabel ('时间序列n');ylabel('实部');title('复指数z4=2+j*pi/6时序列实部'); subplot(5,2,8);stem(n,imag(x4)); xlabel ('时间序列n');ylabel('虚部');title('复指数z4=2+j*pi/6时序列虚部'); subplot(5,2,9);stem(n,real(x5)); xlabel ('时间序列n');ylabel('实部');title('复指数z5=j*pi/6时序列实部'); subplot(5,2,10);stem(n,imag(x5)); xlabel ('时间序列n');ylabel('虚部');title('复指数z5=j*pi/6时序列虚部');由上图的实部部分可以看出,Z=pi/6时,序列周期为12。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电 子 科 技 大 学实 验 报 告学生姓名:陈军宏 学 号:2011019100021 指导教师:杨炼一、实验室名称:数字信号处理实验室 二、实验项目名称:多种离散时间信号的产生 三、实验原理:1、基本离散时间信号利用MATLAB 强大的数值处理工具来实现信号的分析和处理,首先就是要学会应用MATLAB 函数来构成信号。
常见的基本信号可以简要归纳如下: (1).单位采样序列⎩⎨⎧=01)(n δ0≠=n n在MATLAB 中可以利用zeros()函数实现。
;1)1();,1(==x N zeros x如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ 0≠=n kn(2).单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n在MATLAB 中可以利用ones()函数实现。
);,1(N ones x =(3).正弦序列)2sin()(ϕπ+=fn A n x采用MATLAB 的实现方法,如:)***2sin(*1:0ϕ+=-=n f pi A x N n(4).实指数序列n a A n x ⋅=)(其中,A 、a 为实数。
采用MATLAB 的实现方法,如:na x N n .^1:0=-=(5).复指数序列n j e A n x )(0)(ωσ+⋅=采用MATLAB 的实现方法,如:)*)*exp((*1:00n j A x N n ωσ+=-=为了画出复数信号x [n ],必须要分别画出实部和虚部,或者幅值和相角。
MATLAB 函数real 、imag 、abs 和angle 可以逐次计算出一个复数向量的这些函数。
2、基本数字调制信号(1).二进制振幅键控(2ASK )最简单的数字调制技术是振幅键控(ASK ),即二进制信息信号直接调制模拟载波的振幅。
二进制幅度键控信号的时域表达式:∑-=nc s n ASK t nT t g a t S ωcos )]([)(其中,a n 为要调制的二进制信号,g (t)是单极性脉冲信号的时间波形,Ts 表示调制的信号间隔。
典型波形如下:图 1 – 1 二进制振幅键控信号时间波形(2).二进制频移键控(2FSK )在二进制数字调制中,若正弦载波的频率随二进制基带信号在f 1和f 2两个频率点间变化,则产生二进制移频键控信号(2FSK 信号)。
二进制频域键控已调信号的时域表达式为:t nT t g a t T n t g a t S n S n S n n FSK 212cos )(cos )()(ωω⎥⎦⎤⎢⎣⎡-+⎥⎦⎤⎢⎣⎡-=∑∑这里,22112,2f f πωπω==,的反码是n n a a 。
典型波形如下:图 1 – 2 二进制频移键控信号时间波形(3).二进制相移键控(2PSK 或BPSK )a n1 0 1 1 0 0 1ttt2FSK 信号载波信号1载波信号2在二进制数字调制中,当正弦载波的相位随二进制数字基带信号离散变化时,则产生二进制移相键控(2PSK)信号。
通常用已调信号载波的0°和 180°分别表示二进制数字基带信号的 1 和 0。
二进制移相键控信号的时域表达式为:πφφω或0),cos()()(2=+⎥⎦⎤⎢⎣⎡-=∑i i c n S n PSK t nT t g a t S典型波形如下:图 1 – 3 二进制相移键控信号时间波形数字调制信号可以根据调制原理采用基本的MATLAB 命令实现,也可以用现成的命令:Y = DMOD(X, Fc, Fd, Fs, METHOD...),其中,X 为要调制的二进制信号;Fc 为载波频率(Hz);Fd 为符号频率(Hz);Fs 为采样频率。
要求:Fs > Fc ,同时Fs/Fd 是一个正整数。
参数METHOD 是可以选择的调制方式:ask 、psk 、qask 、fsk 、msk 等。
3、双音多频DTMF 信号DTMF (Double Tone MulitiFrequency,双音多频)作为实现电话号码快速可靠传输的一种技术,它具有很强的抗干扰能力和较高的传输速度,因此,可广泛用于电话通信系统中。
但绝大部分是用作电话的音频拨号。
另外,它也可以在数据通信系统中广泛地用来实现各种数据流和语音等信息的远程传输。
DTMF 是用两个特定的单音频组合信号来代表数字信号以实现其功能的一种编码技术。
两个单音频的频率不同,代表的数字或实现的功能也不同。
这种电话机中通常有16个按键,其中有10个数字键0~9和6个功能键*、#、A 、B 、C 、D 。
由于按照组合原理,一般应有8种不同的单音频信号。
因此可采用的频率也有8种,故称之为多频,又因它采用从8种频率中任意抽出2种进行组合来进行编码,所以又称之为“8中取2”的编码技术。
Tst2PSK 信号a n 1 0 0 1根据CCITT的建议,国际上采用的多种频率为697Hz、770Hz、852Hz、941Hz、1209Hz、1336Hz、1477Hz和1633Hz等8种。
用这8种频率可形成16种不同的组合,从而代表16种不同的数字或功能键,具体组合见表1-1。
表1-1 双音多频的组合功能高频群Hz1209 1336 1477 1633 功能低频群Hz697 1 2 3 A770 4 5 6 B852 7 8 9 C941 * 0 # D 因此,DTMF信号可以看作两个有限长度的正弦序列相加,正弦信号的频率由按键数字或字母符号对应的频率决定。
如,数字“8”由行频852Hz和列频1336Hz 决定。
四、实验目的:1、掌握几种基本的离散时间信号(包括单位采样序列,单位阶跃序列,单频正弦序列,单频复指数序列,实指数序列等)。
2、能够熟练利用MATLAB产生这些基本的离散时间信号。
3、理解双音多频DTMF信号、ASK、FSK、BPSK等信号的产生原理。
4、学习并运用MATLAB产生各种通信中的调制信号及双音多频信号。
五、实验内容:1、对几种基本离散时间信号(包括单位采样序列,单位阶跃序列,正弦序列,复指数序列,实指数序列等)在MATLAB中编程产生。
2、(拓展要求)利用MATLAB编程产生2ASK,2FSK,2PSK等数字调制信号。
3、(拓展要求)利用MATLAB编程产生理解双音多频DTFM信号。
4、(拓展要求)利用MATLAB编程产生高斯白噪声序列。
5、(拓展要求)利用MATLAB中的谱分析函数对正弦信号的频谱进行分析。
6、通过硬件(DSP)实验箱演示上述信号的时域(示波器)波形与频域波形(计算结果)。
六、实验器材(设备、元器件):安装MATLAB 软件的PC 机一台,DSP 实验演示系统一套。
七、实验步骤:1、在2020≤≤-n 内,画出单位下列信号:(a ).单位采样序列][][1n n x δ=和单位阶跃序列][][2n u n x =的时域波形图。
(b ).]5[][11+=n x n y 、]8[][22-=n x n y 的波形。
说明][1n x 与][1n y 、][2n x 与][2n y 之间的关系。
2、画出下列信号在1000≤≤n 内的波形。
⎪⎭⎫⎝⎛+⎪⎭⎫ ⎝⎛=⎪⎭⎫⎝⎛=⎪⎭⎫ ⎝⎛=83cos 12cos ][2sin ][16sin ][543n n n x n n x n n x πππ观察][][][543n x n x n x 、、是否周期信号。
如果是周期信号,信号的基波周期是什么?如果不是周期信号,说明原因。
3、在300≤≤n 内,画出下列信号:()nj n en x n x 6/12/176][)8.0(2.0][π+-==对于复数序列,要求分别画出实部和虚部;幅值和相角。
若把][6n x 中的底数0.8分别改为1.2、-0.8,讨论产生的时域波形有何变化。
总结指数序列的底数对序列变化的影响。
4、(拓展要求)设计产生数字二进制序列:1 0 1 0 1 0 的2ASK 、2FSK 、2PSK 调制信号。
已知符号速率Fd =10Hz (即时间间隔Ts 为0.1),输出信号的采样频率为20Hz 。
(a ).2ASK 信号的载波频率Fc =5Hz ,(b ).2FSK 信号载波1频率F1=5Hz ,载波2频率F2=1Hz 。
(c ).2PSK 载波频率Fc =1Hz 。
分别画出以上信号调制前后的时域波形图。
5、(拓展要求)利用MATLAB 产生DTMF 双音多频信号。
画出数字“0”的时域波形图。
6、(拓展要求)MATLAB 函数randn(1,N)可以产生均值为0,方差为1的高斯随机序列,也就是白噪声序列。
试利用randn 函数产生均值为0.15,方差为0.1的高斯白噪声序列][8n x ,要求序列时域范围为1000≤≤n 。
画出时域波形图。
同时将实验步骤2中产生的信号][2n x 与][8n x 相加,将得到的波形与][2n x 的波形做比较。
7、(拓展要求)利用MATLAB 中的谱分析函数画出][][][543n x n x n x 、、的频谱。
与理论上根据傅立叶变换的定义计算出的][][][543n x n x n x 、、的频谱进行比较。
8、通过硬件(DSP )实验箱演示上述信号的时域(示波器)波形与频域波形(计算结果)。
八、实验数据及结果分析:程序:(1)产生x1[n]、x2[n]、y1[n]、y2[n]序列的程序 %产生x1[n]n=-20:20; x1=zeros(1,41); x1(21)=1;subplot(2,2,1),stem(n,x1); xlabel('n'); ylabel('x1(n)');%产生x2[n]n=-20:20; x2=ones(1,41);k=1:20;x2(k)=0;subplot(2,2,2),stem(n,x2);xlabel('n');ylabel('x2(n)');%产生y1[n]n=-20:20;y1=zeros(1,41);y1(16)=1;subplot(2,2,3),stem(n,y1);xlabel('n');ylabel('y1(n)');%产生y2[n]n=-20:20;y2=ones(1,41);k=1:28;y2(k)=0;subplot(2,2,4),stem(n,y2);xlabel('n');ylabel('y2(n)');2产生x3[n]、x4[n]、x5[n]序列的程序N=0:100x3=sin(pi.*N/16);x4=sin(N/2);x5=cos(pi.*N/12)+cos(pi.*N*3/8);figure(1),subplot(2,2,1),stem(N,x3); xlabel('n');title('x3(n)') subplot(2,2,2),stem(N,x4); xlabel('n');title('x4(n)') subplot(2,2,3),stem(N,x5); xlabel('n');title('x5(n)')3产生x6[n]、x7[n]序列的程序N=0:30;x6=0.2*(0.8).^N;x7=exp((-1/12+j*pi/6).*N);subplot(2,2,4),stem(N,x6);title('x6(n)') figure(2),subplot(2,2,1),stem(N,real(x7)); xlabel('n');title('real{x7(n)}'); subplot(2,2,2),stem(N,imag(x7)); xlabel('n');title('imag{x7(n)}'); subplot(2,2,3),stem(N,abs(x7)); xlabel('n');title('Magnitude {x7(n)}'); subplot(2,2,4),stem(N,angle(x7)); xlabel('n');title('angle {x7(n)}');4产生2ASK 、2FSK 、2PSK 调制信号的程序(拓展要求) 5产生DTMF 信号的程序(拓展要求) 6高斯白噪声序列的产生程序(扩展要求)7正弦信号频谱分析的程序(扩展要求)(1)][][][][][][][][][765432121n x n x n x n x n x n y n y n x n x 、、、、、、、、的时域(2)信号的时移:][1n x 与][1n y 、][2n x 与][2n y 之间的关系。