📄 find_delay.m
字号:
% function dt=find_delay(after_channel_acq,acq_seq,piconet,datarate,sample_times,segma)
fc=find_centre_freq(piconet);
acq_length=length(acq_seq)*24;
[carrier,carrier_min,carrier_max,fs]=gaussian_trend(segma,fc,acq_length);
power=max(max(carrier))^2;
carrier_to_sample_position=floor(sample_times/2)+1;
num=1;
code=codeset(piconet,24);
decision=zeros(1,acq_length);
dm=zeros(1,length(decision));
for k=1:length(after_channel_acq)-length(carrier)-1
temp=carrier.*after_channel_acq(k:k+length(carrier)-1);
temp=temp/max(abs(temp));
for i=1:acq_length
for j=1:sample_times
decision(i)=decision(i)+(temp((i-1)*3*sample_times+carrier_to_sample_position+(j-1)*sample_times));
end
end
for i=1:acq_length
if decision(i)>=1
dm(i)=1;
else
if decision(i)<=-1
dm(i)=-1;
else
dm(i)=0;
end
end
end
% same(k)=sum(xor(dm,spreaded_acq));
for i=1:acq_length/24
decide_acq(i)=sum(dm((i-1)*24+1:i*24).*code);
if decide_acq(i)>0
decide_acq(i)=1;
else
decide_acq(i)=0;
end
end
same2(k)=sum(xor(decide_acq,acq_seq));
% if sum(xor(decision,spreaded_acq))<=5
% dt(num)=k;
% num=num+1;
%
% end
%
% if sum(xor(decide_acq,acq_seq))==0
% dt(num)=k;
% num=num+1;
% end
end
dt=find(same2==0);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -