您的当前位置:首页正文

dsp实验matlab

2020-11-03 来源:客趣旅游网
dsp实验matlab

实验一

数字信号的产生与基本运算

dsp实验matlab

1.实验要求

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

熟悉 Matlab 产生数字信号的基本命令,加深对数字信号概念的理解,并能够用 Matlab 产生和绘制出一些常用离散信号序列。请用 Matlab 画出下列序列的波形(-10a) δ(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、实验结果

(1)常用数字信号序列的产生 单位取样序列

x=impseq(0,-10,10);n=[-10:10];stem(n,x)

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

x=2*stepseq(5,-10,10);n=[-10:10];stem(n,x))

dsp实验matlab

矩形序列:

x1=stepseq(-10,-20,20);n1=[-20:20];x2=stepseq(10,-20,20);n2=[-20:20];y=x1-x2;n=[-20:20];stem(n,y)

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

n=[-10:0.1:10];x=2*sin(0.3*pi*n)+0.5*cos(2*(0.6*pi*n));stem(n,x)

dsp实验matlab

(2)数字信号的基本运算 加法:δ(n)+ 2 u(n-5)

x1=impseq(0,-10,10);n1=[-10:10];x2=2*stepseq(5,-10,10);n2=[-10:10];y=x1+x2;n=[-10:10];stem(n,y)

减法δ(n)- 2 u(n-5)

x1=impseq(0,-10,10);n1=[-10:10];x2=2*stepseq(5,-10,10);n2=[-10:10];y=x1-x2;n=[-10:10];stem(n,y)

dsp实验matlab

乘法: u(n)* u(n-5)

x1=stepseq(0,-10,10);n1=[-10:10];x2=2*stepseq(5,-10,10);n2=[-10:10];y=x1.*x2;n=[-10:10];stem(n,y)

移位:

dsp实验matlab

声音波形

[record,fs,bits]=wavread('voice.wav');

[background,fs,bits]=wavread('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,'10210607.wav'); subplot(3,1,1),plot(x),title('voice');

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

dsp实验matlab

3.实验总结

通过这次实验,对MATLAB的使用了解了许多,尤其是在对信号基本运算和声音的处理方面。

因篇幅问题不能全部显示,请点此查看更多更全内容