北邮DSP Matlab实验一

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

1.实验要求

●(1) 常用数字信号序列的产生:

●熟悉 Matlab 产生数字信号的基本命令,加深对数字信号概念的理解,并能够

用 Matlab 产生和绘制出一些常用离散信号序列。请用 Matlab 画出下列序列的波形(-10

●a) δ(n)

●b) 单位阶跃序列 2 u(n-5)

●c) 矩形序列 R(n)

●d) y(n)=2sin(0.3πn)+ 0.5cos2(0.6πn)

●(2)加、减、尺度(乘除)和移位是数字信号处理中最基本的算术运算,将

上述基本序列进行这些基本运算,得到多个序列构成的组合序列。

●(3)请用您的计算机声卡采用一段您自己的声音 x(n),长度为 45秒,单声道,

取样频率 44.1kHz,16bit/样值,然后与给定的一段背景音乐 y(n) 按下式叠加为一个声音信号 z(n):z(n) = 0.7x(n) + 0.3y(n)

●要求在同一个 Figure 中,画出采集声音 x(n)、背景音乐 y(n)和混音 z(n) 的时域波

形;

2. 实验结果

●产生冲激序列:

n0=0;

n=linspace(-10,10,21);

length_n=length(n);

xn=zeros(1,length_n);

for j=1:21

if j==11

xn(j)=1;

end

end

stem(n,xn)

xlabel('n');ylabel('x(n)');title('单位冲激序列δ(n)');

grid

●阶跃序列:

no=5;

n=[-10:10];

x=[(n-no)>=0];x=2*x;

stem(n,x)

xlabel('n');ylabel('x(n)');title('单位阶跃序列2 u(n-5)')

grid

●矩形序列:

no=0;

n01=4;

n1=-10;

n2=10;

n=[n1:n2];

x=[(n-no)>=0];

x1=[(n-n01-1)<=0];

x=x.*x1;

stem(n,x)

xlabel('n');ylabel('x(n)');title('矩形序列R(n)'); grid

●三角序列:

omig1=0.3*pi;

omig2=1.2*pi;

n=[-10:10];

xn1=2*sin(omig1*n);

xn2=0.5*cos(omig2*n);

x=xn1+xn2;

stem(n,x)

xlabel('n');ylabel('y(n)');title('三角序列y(n)'); grid

●四则运算:

n0=0;

n=linspace(-10,10,21);

length_n=length(n);

x1=zeros(1,length_n);

for j=1:21

if j==11

x1(j)=1;

end

end

n1=5;

n=[-10:10];

x2=[(n-n1)>=0];x2=2*x2;

no=0;

n01=4;

n1=-10;

n2=10;

n=[n1:n2];

x33=[(n-no)>=0];

x44=[(n-n01-1)<=0];

x3=x33.*x44;

omig1=0.3*pi;

omig2=1.2*pi;

n=[-10:10];

xn1=2*sin(omig1*n);

xn2=0.5*cos(omig2*n);

x4=xn1+xn2;

xn1=x1+x2+x3+x4;

xn2=-x1-x2-x3-x4;

xn3=x3.*x4;

xn4=x3./x4;

stem(n,xn1);grid

stem(n,xn2);grid

stem(n,xn3);grid

stem(n,xn4);grid

合成声音文件:

[record,fs,bits]=wavread('D:\record.wav'); [background,fs,bits]=wavread('D:\background.wav'); x=record((fs*0+1:fs*45),:);

y=background((fs*0+1:fs*45),:);

z=0.7*x+0.3*y;

wavwrite(z,fs,bits,'D:\music.wav');

subplot(3,1,1),plot(x),title('x(n) record');

subplot(3,1,2),plot(y),title('y(n) background'); subplot(3,1,3),plot(z),title('z(n) music');

相关文档
最新文档