?? system_upsend.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 + -