菜鸟之MATLAB学习——SSB & DSB调制信号及其频谱分析

clc;
close all;


fm=1;
fc=10;
dt=0.001;
T=5;
t=0:dt:T-dt;
A=2;

mt=A*cos(2*pi*fm*t);
s_ssb=real(hilbert(mt).*exp(j*2*pi*fc*t)); 
s_dsb=mt.*cos(2*pi*fc*t);
B=fm;
subplot(311),plot(t,s_ssb);

fs=1/dt;
N=T/dt;
df=fs/N;

%%%%------- ssb信号的傅里叶变换---------%%%%

f=0:df:(N-1)*df;
sf_ssb=fft(s_ssb);
sf_ssb=fftshift(sf_ssb);
f=f-N/2*df;

%%%%------- ------end-----------------%%%%

%%-------------DSB的傅里叶变换-----------%%%%
sf_dsb=fft(s_dsb);
sf_dsb=fftshift(sf_dsb);
subplot(312),plot(f,1/N*real(sf_dsb));
axis([-20,20,0,1]);
xlabel('dsb fft');
%%%%------- mt傅里叶变换---------%%%%
mtf=fft(mt);
mtf=fftshift(mtf);
subplot(313),plot(f,1/N*real(mtf));hold on;

plot(f,1/N*sf_ssb,'r--');
axis([-20,20,0,1]);
xlabel('ssb fft');

运行结果

在这里插入图片描述
值得注意的是
hilbert(x)是对实信号求其解析信号,即实部为实信号,虚部为其希尔伯特变换后的信号。

从FFT变换后的幅值来讲,SSB是其DSB的两倍,原因是解析信号的能量是实信号的两倍。

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值