✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。
🍎 往期回顾关注个人主页:Matlab科研工作室
🍊个人信条:格物致知,完整Matlab代码及仿真咨询内容私信。
⛄ 内容介绍
扩频通信系统是一种特殊的通信系统,这种系统中信号自身的宽带要远小于传输信号的信号宽带,并且这种通信方式相比传统通信方式更加具有优势,如抗多径衰落、码分多址、信号隐蔽性、保密性等方面,同时该种通信方式在民用和军用通信方面都得到广泛应用。Matlab软件具有很大科学计算能力、精确电路仿真能力以及很大系统仿真能力,实现扩频通信系统的性能仿真。本文主要论述了扩频通信概述、直扩通信系统性能仿真分析以及跳频通信性能仿真分析。
⛄ 运行结果
⛄ 代码
clc;clear all;close all;
num=50000;
for (SNR=0:10)
bpsk=randsrc(1,num,[1,-1]);%产生BPSK基带信号
snr=1/(10^(SNR/10));
noise=sqrt(snr/2)*(randn(1,4*num));
sf=[1,-1,1,-1];%Walsh码
b_k=kron(bpsk,sf);%利用函数进行扩频,扩频后BPSK基带信号每个元素对应4个元素
receive=b_k+noise;%含噪声的接收信号
m=1;
for i=1:4:length(b_k)-3 %进行解扩处理
b_kr(i:i+3)=sf.*receive(i:i+3);
b_jkt(m)=sum(b_kr(i:i+3));%将每4四序列相加,方便解调判决
m=m+1;
end
pe(SNR+1)=0;
for(i=1:num) %信号判决,大于0判为1,小于0判为-1,恢复出原始信号
if (b_jkt(i)>=0)
b_jk(i)=1;
else b_jk(i)=-1;
end
end
pe(SNR+1)=(sum(abs((b_jk-bpsk)/2)))/num;%计算误码率
peb(SNR+1)=0.5*erfc(sqrt(10^(SNR/10)));
end
r=0:10;
semilogy(r,peb,'b-v',r+6,pe,'m-x');%对y取底为10对数
grid on;legend('理论误码率曲线','仿真误码率曲线');
⛄ 参考文献
[1] 王向鸿,赵海涛,关晓东.跳频扩频系统的Matlab模拟仿真实现[J].现代电子技术, 2010, 33(19):3.DOI:10.3969/j.issn.1004-373X.2010.19.022.
[2] 王晶.基于MATLAB扩频通信系统的性能仿真[J].智能城市, 2017(02):277-278.DOI:CNKI:SUN:ZNCS.0.2017-02-240.