电子科技大学信号处理实验1 - 信号的基本表示及时域分析 下载本文

3、在?20?n?20内,画出单位下列信号:

(a)单位采样序列x1[n]??[n]和单位阶跃序列x2[n]?u[n]的时域波形图。 (b)y1[n]?x1[n?5]、y2[n]?x2[n?8]的波形。说明x1[n]与y1[n]、x2[n]与

y2[n]之间的关系。

4、画出下列信号在0?n?100内的波形。

??n?x3[n]?sin???16??n?x4[n]?sin??

2????n??3?n?x5[n]?cos???cos??128????

观察x3[n]、x4[n]、x5[n]是否周期信号。如果是周期信号,信号的基波周期是什么?如果不是周期信号,说明原因。

5、在0?n?30内,画出下列信号:

x6[n]?0.2(0.8)n

x7[n]?e??1/12?j?/6?n

对于复数序列,要求分别画出实部和虚部;幅值和相角。若把x6[n]中的底数0.8分别改为1.2、-0.8,讨论产生的时域波形有何变化。总结指数序列的底数对序列变化的影响。

6、(拓展要求)设计产生数字二进制序列:1 0 1 0 1 0 的2ASK、2FSK、2PSK调制信号。已知符号速率Fd=10Hz(即时间间隔Ts为0.1),输出信号的采样频率为200Hz。

(a)2ASK信号的载波频率Fc=40Hz,

(b)2FSK信号载波1频率F1=25Hz,载波2频率F2=40Hz。 (c)2PSK载波频率Fc=50Hz。

分别画出以上信号调制前后的时域波形图。

7、(拓展要求)利用MATLAB产生DTMF双音多频信号。画出数字“0”的时域波形图。

8、(拓展要求)MATLAB函数randn(1,N)可以产生均值为0,方差为1的高斯随机序列,也就是白噪声序列。试利用randn函数产生均值为0.15,方差为0.1的高斯白噪声序列x8[n],要求序列时域范围为0?n?100。画出时域波形图。同时将实验步骤2中产生的信号x2[n]与x8[n]相加,将得到的波形与x2[n]的波形做比较。

9、(拓展要求)利用MATLAB中的谱分析函数画出x3[n]、x4[n]、x5[n]的频谱。与理论上根据傅立叶变换的定义计算出的x3[n]、x4[n]、x5[n]的频谱进行比较。

八、实验数据及结果分析:

需要的程序代码:

(1)一段MATLAB包括从键盘输入,赋值,基本矩阵和向量计算,程序流控(循环,逻辑判断,选择结构,分支语句等)和绘图操作的MATLAB简单程序。

实验1代码如下:

disp('请选择本函数所要执行的功能');

disp('k=1:绘出零极图;k=2:绘出相位延迟;k=3:绘出群延迟'); k=input('k='); num1=[-0.2 0.8 0.4 1]; num2=[2.4 -0.9 1.2 2]; num=num1+num2; den1=[1 0.4 0.18 -0.2]; den2=[ 2 3.5 -2.1 1.05]; den=den1.*den2; figure(1); switch k

case 1;

zplane(num,den); case 2

phasedelay(num,den); case 3

grpdelay(num,den); otherwise

disp('错误!'); end disp(num); disp(den);

(2)产生x1[n]、x2[n]、y1[n]、y2[n]、x3[n]、x4[n]、x5[n]、x6[n]、x7[n]序列的程序

实验2代码如下: N=41; n=-20:20; figure(1); %x1[n] x1=zeros(1,N); x1(21)=1; subplot(2,2,1); stem(n,x1,'fill');

xlabel('n'),ylabel('x1[n]'),title('x1[n]的时域波形图'); %x2[n]

x2=[zeros(1,20) ones(1,21)]; subplot(2,2,2);

stem(n,x2,'fill')

xlabel('n'),ylabel('x2[n]'),title('x2[n]的时域波形图'); %y1[n]

y1=[x1(1+5:length(x1)),zeros(1,5)]; subplot(2,2,3); stem(n,y1,'fill');

xlabel('n'),ylabel('y1[n]'),title('y1[n]的时域波形图'); %y2[n]

y2=[zeros(1,8),x2(1:length(x2)-8)]; subplot(2,2,4); stem(n,y2,'fill')

xlabel('n'),ylabel('y2[n]'),title('y2[n]的时域波形图'); n=0:100; figure(1); %x3[n] x3=sin(pi*n/16); subplot(3,1,1) stem(n,x3,'fill')

xlabel('n'),ylabel('x3'),title('x3[n]的时域波形图'); %x4[n] x4=sin(n/2); subplot(3,1,2) stem(n,x4,'fill')

xlabel('n'),ylabel('x4'),title('x4[n]的时域波形图'); %x5[n]