📄 lssb.m
字号:
% LSSB调制的Matlab源程序。被调信号
% 当0<t<t0/3时为+1,当t0/3<t<2*t0/3为-2,其它情况下为零.
t0=0.15;
ts=0.001;
fc=250;
fs=1/ts;
df=0.25;
t=[0:ts:t0];
% the message vector
m=[ones(1,t0/(3*ts)),-2*ones(1,t0/(3*ts)),zeros(1,t0/(3*ts)+1)];
c=cos(2*pi*fc.*t);
udsb=m.*c;
[UDSB,udssb,df1]=fftseq(udsb,ts,df); % 傅立叶变换
UDSB=UDSB/fs; % 缩放
f=[0:df1:df1*(length(udssb)-1)]-fs/2;
n2=ceil(fc/df1);
% remove the upper sideband DSB
UDSB(n2:length(UDSB)-n2)=zeros(size(UDSB(n2:length(UDSB)-n2)));
ULSSB=UDSB;
[M,m,df1]=fftseq(m,ts,df); % 傅立叶变换
M=M/fs; % 缩放
u=real(ifft(ULSSB))*fs;
subplot(3,1,1);
plot([0:ts:ts*(length(u)-1)/8],u(1:length(u)/8))
title('LSSB调制信号')
subplot(3,1,2);
plot(f,abs(fftshift(M)))
title('LSSB被调信号的频谱')
subplot(3,1,3);
plot(f,abs(fftshift(ULSSB)))
title('LSSB调制信号的频谱')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -