⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 system_upsend.m

📁 cdma 系统级仿真
💻 M
字号:
                         %※  数 据 发 送 端 ※%
%**************************************************************************
clc;
clear all;
close all;
%*** 产生随机数字比特流x***%
amplitude=1;
longth=16*8;
sourcedata=amplitude*randsrc(1,longth,[0,1]);%长为100的随机数
%*** 将sourcedata进行串并变换,分成sourcedataI、sourcedataQ两路 ***%
sourcedataI=zeros(1,(ceil(longth/6))*3);%ceil(x)为取整,即大于或等于x的整数
sourcedataQ=zeros(1,(ceil(longth/6))*3);
for var1=1:length(sourcedata)/2;
    sourcedataI(1,var1)=sourcedata(1,2*var1-1);  %奇数点
    sourcedataQ(1,var1)=sourcedata(1,2*var1);    %偶数点
end;
%***进行3-8walsh码正交变换***%
    walshdataI=walshcode(sourcedataI);
    walshdataQ=walshcode(sourcedataQ);
%将walsh码输出数据进行spreadtimes倍扩展以备扩频
spreadtimes=4;
for var2=1:length(walshdataI)
    var3=1:spreadtimes;
    walshdata96I(1,(var2-1)*spreadtimes+var3)=walshdataI(1,var2);
    walshdata96Q(1,(var2-1)*spreadtimes+var3)=walshdataQ(1,var2);
end
%产生42位扩频长码
longPNcode=longcode(length(walshdata96I));
DSSoutdataI=mod(walshdata96I+longPNcode,2);
DSSoutdataQ=mod(walshdata96Q+longPNcode,2);
%产生15位扩频短码
shortPNcode=shortcode(length(walshdata96I));
shortPNoutI=mod(DSSoutdataI+shortPNcode(1,:),2);
shortPNoutQ=mod(DSSoutdataQ+shortPNcode(2,:),2);
%变为双极性码,0->1,1->-1
shortPNout1I=-2*(shortPNoutI-0.5);
shortPNout1Q=-2*(shortPNoutQ-0.5);
%基带滤波和OQPSK调制
upsenddata=filer_QPSK2q(shortPNout1I,shortPNout1Q);
save send_data1



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -