?? dsss_multiuser.m
字號:
%在DS-spread spectrum系統中,噪聲為加性高斯白噪聲,驗證性能,傳統單用戶檢測
clear all
close all
clc;
%[1]initial Parameter
K=4; %用戶數
Lc=32;%擴頻增益
x_num=5000;%信息序列長度
SNRindB=-20:3:10;
Tc=1;
Ts=Lc*Tc;
for i=1:length(SNRindB)
SNRline=10^(SNRindB(i)/10);
Sigma=1;%噪聲標準差
Eb=2*Sigma^2*SNRline; %信號能量
Pow=Eb/Ts;%信號功率
x=GenBPSK(x_num);%產生BPSK信號,信號長度已經確定,均勻分布
%[2]spread spectrum
PNcode=hadamard(Lc);%產生用戶PN序列
c=PNcode(1,:)';
y=dsmod(c,x);
%加入其他用戶信息作為干擾
for u=2:K
xtemp=3*GenBPSK(x_num);%此處可調節,用于分析系統對遠近效應的抵抗能力
ctemp=PNcode(u,:)';
ytemp=dsmod(ctemp,xtemp);
y=y+ytemp;
end
y=sqrt(Pow)*y;
%[3]Add AWGN
AWGN=Sigma*randn(1,Lc*x_num);
y=y+AWGN;
%[4]despread spectrum
r=dsdemode(c,y);
%[5]decision
r=sign(r);
Errorbit=length(find(abs(r-x)>1e-004));
BER(i)=Errorbit/length(r);
end
%Plot,SNR,BER
figure
semilogy(SNRindB,BER);
title('The BER of Different SNR')
grid
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -