如何用matlab模拟简单的信号调制,初学求代码

如何用matlab模拟简单的信号调制,初学求代码,第1张

[X,FS,NBITS]=wavread('春天里')

N= length(X)

sound (X,FS)

W=2\N*[0:N-1]%连续谱的数字角频率

FY=fft(X,N)

figure

subplot(211)plot(X)title('原音乐信号波形')

subplot(212)plot(W,abs(FY))title('原音乐信号频谱')

%减抽样

D=12j=0

for i=1:D:length(X/20),

j=j+1

X1(j)=X(i)

end

sound(X1,FS/12)

N1=1024

W1=2\N1*[0:N1-1]

F1Y=fft(X1,N1)

figure

subplot(211)plot(X1)title('减抽样后信号波形')

subplot(212)plot(W1,abs(F1Y))title('减抽样后信号频谱')

%AM调制

n=0:N-1

x=cos(n*pi*0.8)%调制信号

Nt=length(x)

FtY=fft(x,Nt)

Wt=2/Nt*[0:Nt-1]

y=X.*x'%对信号进行调制

N2=length(y)

F2Y=fft(y,N2)

W2=2/N2*[0:N2-1]

sound(y,FS)

figure

plot(Wt,abs(FtY))

grid on

title ('调制信号cos的频谱图')

figure

subplot(2,1,1)plot(W,abs(FY))

grid on

title ('原音乐信号的频谱')

subplot(2,1,2)plot(W2,abs(F2Y))

grid on

title ('已调信号频谱')

最近正在学习这个东西,希望有所帮助

你这LPF函数是别人写的吧,里面还有一个新的F2T()函数不知道是什么,不是MATLAB自带的,也是别人写的,你没拿过来吧。

不管了,你按我给的写,直接全复制到一个文件里,运行就行了。

close all

clear all

dt=0.001

fm=1

fc=10

T=5

t=0:dt:T

mt=sqrt(2)*cos(2*pi*fm*t)

s_dsb=mt.*cos(2*pi*fc*t)

B=2*fm

figure(1)

subplot(311)

plot(t,s_dsb)

hold on

plot(t,mt,'r--')

title('DSB调制信号')

xlabel('t')

f_dsb=fft(s_dsb)

temp=f_dsb

temp([50:4953])=0

s_ssb=ifft(temp)

subplot(312)

plot(t,s_ssb)

hold on

plot(t,mt,'r--')

title('SSB调制信号(下边带)')

xlabel('t')

temp=f_dsb

temp([1:49])=0

temp([4953:end])=0

s_ssb=ifft(temp)

subplot(313)

plot(t,s_ssb)

hold on

plot(t,mt,'r--')

title('SSB调制信号(上边带)')

xlabel('t')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12087588.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存