%file_c8:SprDespr.m
%本程序仿真采用WALSH的扩频解扩过程
clear
clc
format compact;
%可调变量
N_user=8;
SNR=15;
%正交扩频吗,这里取8阶Walsh函数,即有8个正交Walsh函数
c=[1 1 1 1 1 1 1 1;
1 1 1 1 -1 -1 -1 -1;
1 1 -1 -1 -1 -1 1 1;
1 1 -1 -1 1 1 -1 -1;
1 -1 -1 1 1 -1 -1 1;
1 -1 -1 1 -1 1 1 -1;
1 -1 1 -1 -1 1 -1 1;
1 -1 1 -1 1 -1 1 -1];
Len_PN=length(c);
Len_Data=16;
Len_Chip=Len_PN*Len_Data;
%信源序列
Signal=randint(N_user,Len_Data);
for i=1:N_user
SigSp(i,:)=kron(Signal(i,:),c(i,:));
end
%发射信号为各用户信号的叠加
TranSig(1:Len_Chip)=0;
for i=1:N_user
TranSig(1,:)=TranSig(1,:)+SigSp(i,:);
end
%信号经过高斯白噪声信道,接收端接收到的信号为发射信号叠加噪声
RecSig=awgn(TranSig,SNR,'measured');
%解扩过程
for j=1:N_user
for i=1:Len_Data
De_Spr(j,Len_PN*(i-1)+1:Len_PN*i)=RecSig(Len_PN*(i-1)+1:Len_PN*i).*c(j,:);
end
end
%解相关过程
SigDeCorr(1:N_user,1:Len_Data)=0;
for j=1:N_user
for i=1:Len_Data
SigDeCorr(j,i)=SigDeCorr(j,i)+sum(De_Spr(j,Len_PN*(i-1)+1:Len_PN*i))/Len_PN;
end
end
%判决过程
for j=1:N_user
for i=1:Len_Data
if(SigDeCorr(j,i)>0.5)
Rec_Data(j,i)=1;
else
Rec_Data(j,i)=0;
end
end
end
subplot(4,1,1)
stem(Signal(2,:));
title('第二个用户原始信号')
subplot(4,1,2)
stairs(TranSig)
title('发射端8个用户叠加信号')
subplot(4,1,3)
stem(SigDeCorr(2,:));
title('第二个用户接收端解相关后的信号')
subplot(4,1,4)
stem(Rec_Data(2,:));
title('第二个用户接收端判决后的信号')
%程序结束
file_c8.rar_cdma_伪随机序列CDMA_自相关
版权申诉
4 浏览量
2022-09-14
18:14:33
上传
评论
收藏 1KB RAR 举报
![avatar](https://profile-avatar.csdnimg.cn/76d4ee81f5f6465b8156d97495319ccf_weixin_42659252.jpg!1)
JaniceLu
- 粉丝: 85
- 资源: 1万+
最新资源
- ASP.NET公文管理系统的设计与实现(源码)
- 操作系统原理与设计Chapter 2: OS Structure
- torch-2.3.1-cp312-cp312-manylinux2014-aarch64.whl
- CSR8675蓝牙芯片 CSR内部培训资料教材资料.zip
- 43-2-每日英语听力 10.9.2会员版_鹿蜀 【20240530更新】.apk
- 期末大作业基于EasyX和C语言的可视化学生成绩管理系统(95分以上)
- 数字电路芯片74系列芯片datasheet技术手册资料总汇合集(241个).zip
- CSDNApp_226.apk
- CCNA实训2022.pka
- 金融分析期末作业.ipynb
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)