📄 ssbd.m
字号:
clear
echo on
t0=2; %信号持续时间
ts=0.001;%抽样时间
fc=100;%载波频率
fs=1/ts;
df=0.3;%频率分辨力
t=[-t0/2:ts:t0/2];
x=sin(200*t);m=x;
m(1001);
c=cos(2*pi*fc.*t);%定义载波同向分量
b=sin(2*pi*fc.*t);%定义载波正交分量
v=m.*c+imag(hilbert(m)).*b;%计算出下边带调幅分量
u=m.*c-imag(hilbert(m)).*b;%计算出上边带调幅分量
[M,m,df1]=fftseq(m,ts,df);%傅立叶变换
M=M/fs;
[U,u,df1]=fftseq(u,ts,df);%傅立叶变换
U=U/fs;
[V,v,df1]=fftseq(v,ts,df);%傅立叶变换
V=v/fs;
f=[0:df1:df1*(length(m)-1)]-fs/2;
pause;clf
subplot(2,2,1)
plot(t,m(1:length(t)));axis([-0.1,0.1,-0.5,1.1])
xlabel('时间');title('未调信号')
pause;subplot(2,2,2)
plot(t,c(1:length(t)));axis([-0.1,0.1,-1.5,1.5])
xlabel('时间');title('载波')
pause;subplot(2,2,3)
plot(t,u(1:length(t)));%做出上边带信号波形
axis([-0.2,0.2,-1,1.2]);
xlabel('时间');title('上边带已调信号')
pause;sublot(2,2,4)
plot(t,v(1:length(t)));%做出下边带波形
axis([-0.2,0.2,-1,1.2])
xlabel('时间');title('下边带已调信号')
pause;subplot(2,1,1)
plot(f,abs(fftshift(M)))
xlabel('频率');title('未调信号的频谱')
pause;subplot(2,1,1)
plot(f,abs(fftshift(U)))
title('上边带已调信号频谱');xlabel('频率');
subplot(2,1,2);plot(f,abs(fftshift(V)))
title('下边带已调信号频谱');xabel('频率')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -