- 积分
 - 6
 
	- 贡献
 -  
 
	- 精华
 
	- 在线时间
 -  小时
 
	- 注册时间
 - 2013-4-20
 
	- 最后登录
 - 1970-1-1
 
 
 
 
 
 
 | 
	
 
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册 
 
 
 
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; 
该调用的都调用了,也不知道怎么回事,求好心人帮忙,谢谢! 
 
 
 |   
 
 
 
 |