爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 6365|回复: 0

[程序设计] 基于matlab的VSB模拟调制系统仿真

[复制链接]

新浪微博达人勋

发表于 2013-4-22 13:42:01 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
问题:(1)残留边带为0.2fm的VSB调制系统;   (2)调制信号的功率谱密度。
程序如下:
%显示模拟调制的波形及解调方法VSB,文件名为VSB.m
%Signal
dt=0.001;
fmax=5;
fc=20;
T=5;
N=T/dt;
t=[0:N-1]*dt;
mt=sqrt(2)*(cos(2*pi*fmax*t)+sin(2*pi*0.5*fmax*t));
%VSB modulation
s_vsb=mt.*cos(2*pi*fc*t);
B=1.2*fm;
double [f,sf]=FFT_SHIFT(t,s_vsb);
dt=t(2)-t(1);
T=t(end);
df=1/T;
N=length(t);
f=[-N/2:N/2-1]*df;
sf=fft(s_vsb);
sf=T/N*fftshift(sf);
double [t,s_vsb]=vsbmd(f,sf,0.2*fm,1.2*fm,fc);
df=f(2)-f(1);
T=1/df;
hf=zeros(1,length(f));
bf1=[floor((fc-0.2*fm)/df):floor((fc+0.2*fm)/df)];
bf2=[floor((fc+0.2*fm/df))+1:floor((fc+1.2*fm)/df)];
f1=bf1+floor(length(f)/2);
f2=bf2+floor(length(f)/2);
stepf=1/length(f1);
hf(f1)=0:stepf:1-stepf;
hf(f2)=1;
f3=-bf1+floor(length(f)/2);
f4=-bf2+floor(length(f)/2);
hf(f3)=0:stepf:(1-stepf);
hf(f4)=1;
yf=hf.*sf;
double [t,s_vsb]=IFFT_SHIFT(f,yf);
df=f(2)-f(1);
fmax=(f(end)-f(1)+df);
dt=1/fmax;
N=length(f);
t=[0:N-1]*dt;
yf=fftshift(yf);
s_vsb=fmax*ifft(yf);
s_vsb=real(s_vsb);
s_vsb=real(s_vsb);
%Power Spectrum Density
double [f,sf]=FFT_SHIFT(t,s_vsb);
dt=t(2)-t(1);
T=t(end);
df=1/T;
N=length(t);
f=[-N/2:N/2-1]*df;
sf=fft(s_vsb);
sf=T/N*fftshift(sf);
PSD=(abs(sf).^2)/T;
%plot VSB and PSD
figure(1)
subplot(211)
plot(t,s_vsb);hold on;
plot(t,mt,'r--');
title('VSB调制信号');
xlabel('t');
subplot(212)
plot(f,PSD);
axis([-2*fc 2*fc 0 max(PSD)]);
title('VSB信号功率谱');
xlabel('f');
错误如下:
??? Undefined function or variable 'fm'.
Error in ==> VSB at 12
B=1.2*fm;

该调用的都调用了,也不知道怎么回事,求好心人帮忙,谢谢!


密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表