Matlab已调带通功率谱密度,基于Matlab的数字基带传输系统实验 2ASK源代码

南京航空航天大学

实验报 告

课程名称:通信原理实验

实验名称:基于Matlab的数字基带传输系统实验

评定成绩:

审阅教师:

一. 实验目的

1.1  掌握数字基带传输系统和振幅键控调制/解调的原理和方法;

1.2  掌握数字基带和振幅键控信号的波形和功率谱特点;

1.3  掌握振幅键控调制系统的MATLAB仿真实现方法。

二.原理框图

853aea5d6f9e4018865fc7745f73e62a.png

二进制振幅键控信号的产生方法(调制方法)有两种:模拟调制法(相乘器)和键控法。

890ca9f65bdaa1a26fca7d62322c0bae.png

0bb1255c81fbb06d22163519f2285491.png

三.程序源代码

%2ASK信号的调制与解调源代码

bit=[1 0 1 0 1 0 1 0];%g为比特流

N=100; %码元速率

fc=1000;%载波频率

swr=10;%信噪比

M=8;%码元个数

bitrate=100;

fs=N*bitrate;

t=linspace(0,1/bitrate,N);

ts=1/fs;

%载波信号

c=cos(2*pi*fc*t);

figure(1)

plot(c,'g');

title('载波信号波形');

y1=fftshift(abs(fft(c)));

figure(2)

plot(y1,'g');

title('载波信号频谱');

axis([-100,200,0,100]);

%数字基带信号产生

bits=[]; sig=[]; s=[];

for i=1:length(bit)%%length(m)表示信号m的长度

if bit(i)==0

bits=zeros(1,N);

else

bits=ones(1,N);

end

sig=[sig,bits]; %数字基带信号

s=[s,cos(2*pi*fc*t).*bits];%已调信号

end

figure(3)

plot(sig,'r');

title('数字基带信号波形');

axis([0,900,-0.5,2]);

y2=fftshift(abs(fft(sig)));

figure(4)

plot(y2,'r');

title('数字基带信号频谱');

axis([0,900,0,450]);

%基带信号功率谱

nfft=1024;

cxn=xcorr(sig,'unbiased'); %计算序列的自相关函数

CXk=fft(cxn,nfft);

Pxx=abs(CXk);

index=0:round(nfft/2-1);

k=index*fs/nfft;

plot_Pxx=10*log10(Pxx(index+1));

figure(5)

plot(k,plot_Pxx);

title('数字基带信号功率谱');

%已调信号的波形以及频谱

figure(6)

plot(s,'y');

title('已调信号波形');

y3=fftshift(abs(fft(s)));

figure(7)

plot(y3,'y');

title('已调信号频谱');

axis([-100,1000,0,250])

%加噪声

figure(8)

y4= awgn(s,swr);

plot(y4,'r');

title('加噪声后的已调信号');

%求加噪声后的功率谱密度

nfft=1024;

cxn=xcorr(y4,'unbiased'); %计算序列的自相关函数

CXk=fft(cxn,nfft);

Pxx=abs(CXk);

index=0:round(nfft/2-1);

k=index*fs/nfft;

plot_Pxxn=10*log10(Pxx(index+1));

figure(9)

plot(k,plot_Pxxn);

title('加噪声后数字基带信号功率谱');

%带通滤波

a=[700,1300];c=0.1;d=35;

Wp=a/(fs/2); %%若为低通,a 为一个频率值,若为带通a 为一个频率范围[a1 a2]

Rp=c; %% c 为通带最大衰减分贝

Rs=d; %% d 为阻带最小衰减分贝

[b,a]=ellip(4,Rp,Rs,Wp);

s1=filter(b,a,s);

figure(10)

plot(s1,'g');

title('带通滤波后的数字基带信号');

%带通滤波后信号功率谱密度

nfft=1024;

cxn=xcorr(s1,'unbiased'); %计算序列的自相关函数

CXk=fft(cxn,nfft);

Pxx=abs(CXk);

index=0:round(nfft/2-1);

k=index*fs/nfft;

plot_Pxx=10*log10(Pxx(index+1));

figure(11)

plot(k,plot_Pxx);

title('带通滤波后信号功率谱');

%抽样判决(解调过程)

sigout=[];

for i=1:M

if s1(N*(i-1)+N/2)>0.5

bits=ones(1,N);

else

bits=zeros(1,N);

end

sigout=[sigout,bits];

end

figure(12)

plot(sigout,'g');

title('抽样判决后的解调信号波形');

axis([0,900,-0.5,1.5]);

%解调信号功率谱密度

nfft=1024;

cxn=xcorr(sigout,'unbiased'); %计算序列的自相关函数

CXk=fft(cxn,nfft);

Pxx=abs(CXk);

index=0:round(nfft/2-1);

k=index*fs/nfft;

plot_Pxx=10*log10(Pxx(index+1));

figure(13)

plot(k,plot_Pxx);

title('滤波后的解调信号功率谱');

%最后将原基带信号和解调后的基带信号统一绘图作比较

figure(14)

subplot(2,1,1);

plot(sig,'r');

title('原数字基带信号');

axis([0,1000,-0.5,1.5]);

subplot(2,1,2);

plot(sigout,'r');

title('解调信号');

axis([0,1000,-0.5,1.5]);

四.对应波形及频谱图

00a120ef423ce894c3478035759ff5e9.png

cf91e81e6847ed5ef945f156db7ac7f6.png

4041606c62a610f748e21d003f45e0be.png

5aa6746842d89f0c95ab588dc9c88f4c.png

56f0b2162d3550803a6aef8e9d9cb83c.png

d3b1e79ab11cdd9b7bc256d20f1a0b95.png

08183eee040f02afeb9e6efc97021fb4.png

d7c63577a2aceb6a8ed72038566c4a14.png

5b2736c7813ba555c5465e7ced1d44f5.png

2557fc9a780441cadd8e7b754f52b970.png

2d5f156946d0410a84149974714d2a59.png

075f761d422c007fcb08c51191015050.png

eb0097cd073d2bfa4197377f01760b5f.png

9fe2b8dca4e0310143650b1cf05cc219.png

原文件from宝杰童鞋~

修改后的另一种码元调制与解调源代码~

  • 3
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值