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

📄 aquistion.m

📁 这是一个较为完整的tr方式uwb接收机的M文件
💻 M
字号:
framesamples=floor(Ts./dt);
pdsamples=floor(Tm./dt); % 在脉冲宽度上的采样点个数,以脉冲的宽度进行滑动相关
bitsamples=framesamples*Ns;%Ts./dt
N=Tf./Tm;%在一bit信息内有N个不同状态

zp=zeros(1,N);
for n=1:N;
    mx=RX1(1+(n-1)*pdsamples:bitsamples+(n-1)*pdsamples); %RX1为接受信号
    mxk=mx.*mask;  %mask 是本地模板信号
    zp(n)=sum(dt.*mxk); %dt=1/fc,
end


if bits(1)
    else zp=-zp;
end           %  如果增加驻留时间和发送的bit数时, 此处需要修改

sd0=No/2;
zp1=abs(zp)./sd0(1);

k=30;

zp2=zeros(1,ceil(N/k)*k+k);
zp2(1:max(size(zp1)))=zp1;
y=zeros(1,ceil(N/k));
for i=1:ceil(N/k)
        y(i)=sum(zp2((i-1)*k+1:(i-1)*k+k));
end
 [Ymax,state]=max(y);
 delay2=state*k*Tm;
 state1=(state-1)*k;
 
 k1=60;
 selvalue=Ymax./k;%门限一
pha=find(zp1(state1:state1+k1)>selvalue);% 数组 
 
    phase=pha+state1-1;   
   z=zp1(phase); 
 q=max(z);

   selvalue1=3/2*selvalue;%门限2
   
[z1,seq]=sort(z); %把z按照从大到小的顺序排列

   Lnum=max(size(z1));
    index=zeros(1:Lnum);
   phase1=zeros(1:Lum);
   for p=1:Lnum
       if z1(Lnum-p+1)> selvalue1
          index(p)=seq(Lnum-p+1);p
          phase1(p)=(index(p)+state1-1).*Tm-delay; %phase1为最后输出的相位,没有规定要多少个 ,过门限的都留下了 
       end
   end

⌨️ 快捷键说明

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