?? mrc_rake.m
字號:
function yn=MRC_Rake(Tao,Atten,rt,Dg,Tf,Ts,Num_Data,PN_code,ref_st)
%Tao--------path delays
%Atten------path attenuations
%rt---------received multipath signal
%Num_Data---表示未擴頻的數據個數
%Tf---------frame duation
%Ts---------sample period
%Dg----pulse duation
%ef_st---------local reference pulse,含占空比的波形,持續(xù)時間為Tf。
%算法是先將多徑對齊合并,再相關接收
n_path=length(Tao);%the number of multipath
com_wei=Atten./sum(Atten.*Atten);%the weigth values to be combined
PN_len=length(PN_code);
cor_st=reshape(ref_st'*PN_code,1,[]);
cor_len=length(cor_st);
Total_samples=Num_Data*cor_len;
for i=1:n_path
rx(i,:)=com_wei(i)*rt(round(Tao(i)/Ts):(Total_samples-1)+round(Tao(i)/Ts));%對接收信號的延時進行處理
end
%多徑合并
if n_path>1
for i=1:n_path
for j=1:Num_Data
rx(i,(j-1)*cor_len+1:j*cor_len)=rx(i,(j-1)*cor_len+1:j*cor_len).*cor_st;
end
end
rx=sum(rx);
else
for j=1:Num_Data
rx((j-1)*cor_len+1:j*cor_len)=rx((j-1)*cor_len+1:j*cor_len).*cor_st;
end
end
%cor_xn=xn.*St; %correlation processing
for j=1:Num_Data
int_xn(j)=Ts*sum(rx((j-1)*cor_len+1:j*cor_len)); %在一個脈沖持續(xù)時間Dg內積分
end
yn=int_xn>0;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -