单边带幅度调制matlab

  • 单边带幅度调制信号的matlab实现:
clc;clear;
%Time and random
t=0:1/1e3:0.999; 
a=[1 0 1 0 1 0 1 0 1 0];
%random sequence &-pi/2 phase shift 
A=a(ceil(10*t+0.01));
A1=[zeros(1,5),A(1:995)];
%Generate Upper side band & lower side band 
g=ones(1,100); 
g=[g,g,g,g,g,g,g,g,g,g]; 
su=(A.*g.* cos(2* pi*100*t)-A1.*g.* sin(2* pi*100*t))/2; 
sl=(A.*g.* cos(2* pi*100*t)+A1.*g.* sin(2* pi*100*t))/2;
f=1000*(0:256)/512; 
Su=fft(su,512);
Pssu=Su.* conj(Su)/512;
SI=fft(sl,512); 
Pssl=SI.* conj(SI)/512;
%Drawing 
subplot(4,1,1); plot(t,A); 
axis([0,1,0,1.2]); 
subplot(4,1,2); plot(t,su);
axis([0,1,0,1.2]); 
subplot(4,1,3); plot(f,Pssu(1:257)); 
axis([0,200,0,10]); 
subplot(4,1,4); plot(f,Pssl(1:257)); 
axis([0,200,0,10]);
  • 结果如下:
  • 在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_40668383/article/details/106844092
今日推荐