ssb的matlab仿真,线性调制AM、DSB、SSB的MATLAB仿真代码

本帖最后由 Windseeker 于 2014-9-28 18:34 编辑

close all

clear all

clc

%参数设置

fm=1000;%待调制信号的最大频率

fc=10000;%通信中一般取载波频率为fc>=5fm

fs=8*fc;%时域抽样定理,通信中一般取8fc~10fc

N=2048;%采样频率和数据点数

M=N;%做M点fft变化时的M

A=3;

n=0:N-1;%抽样点数

%信号生成

t=n/fs;%时间序列

mt=cos(2*pi*fm*t);%待调制信号

ct=cos(2*pi*fc*t);%载波信号

am=(A+mt).*ct;%AM调制信号

dsb=mt.*ct;%DSB调制信号

%信号解调,以DSB信号为例

sp=dsb.*ct;

wc=1.5*2*pi*fm/fs;%6dB截止数字角频率(对fs归一化)

b=fir1(16,wc/pi);%窗函数法设计FIR DF LP,N=16表示设计滤波器阶数,即滤波器的单位脉冲响应长度为N+1,wc/pi表示wc对pi归一化的数字频率,默认选用哈明窗,返回冲激响应

m2=filter(b,1,sp);%由于是FIR数字滤波,所以a=1;滤去高频分量2fc

m2=2*m2;%放大幅度

%频谱分析

f=[0:M-1]*fs/M;%频域的频率序列,一般取fft点数相等

MTF=fft(mt,M);%做fft变换

CTF=fft(ct,M);%做fft变换

AMF=fft(am,M);%做fft变换

DSBF=fft(dsb,M);%做fft变换

M2F=fft(m2,M);%做fft变换

figure(1);

subplot(5,1,1);

plot(t,mt);

xlabel('t');

ylabel('m(t)');

title('信号的时域波形');

grid on

subplot(5,1,2);

plot(t,ct);

xlabel('t');

ylabel('c(t)');

grid on

subplot(5,1,3);

plot(t,am);

xlabel('t');

ylabel('AM');

grid on

subplot(5,1,4);

plot(t,dsb);

xlabel('t');

ylabel('DSB(t)');

grid on

subplot(5,1,5);

plot(t,m2);

xlabel('t');

ylabel('m2(t)');

grid on

figure(2);

subplot(5,1,1);

plot(f,MTF);

xlabel('频率f/Hz');

ylabel('幅度abs(MTF)');

title('信号的幅度谱');

grid on

subplot(5,1,2);

plot(f,CTF);

xlabel('频率f/Hz');

ylabel('幅度abs(CTF)');

grid on

subplot(5,1,3);

plot(f,abs(AMF));

xlabel('频率f/Hz');

ylabel('幅度abs(ANF)');

grid on

subplot(5,1,4);

plot(f,abs(DSBF));

xlabel('频率f/Hz');

ylabel('幅度abs(DSBF)');

grid on

subplot(5,1,4);

plot(f,abs(M2F));

xlabel('频率f/Hz');

ylabel('幅度abs(M2F)');

grid on

大家有什么问题可以探讨一下,后续会连载,大家相互学习

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值