ljq_ppmreceiver.m
来自「在单一天线接收和发送的UWB中Rake接收机BER的性能的仿真」· M 代码 · 共 44 行
M
44 行
%/*---------------------------接收积分检测---------------*/
function [RXbits]=ljq_PPMreceiver(R,mask,fc,numbit,Ns,Ts,HDSD)
[N,L]=size(R);
RXbits=zeros(N,numbit);
dt=1/fc;
framesamples=floor(Ts./dt);
bitsamples=framesamples*Ns;
for n=1:N
rx=R(n,:);
mx=rx.*mask
if HDSD==1 %硬判决
for nb=1:numbit
mxk=mx(1+(nb-1)*bitsamples:bitsamples+(nb-1)*bitsamples);
No0=0;
No1=0;
for np=1:Ns
mxkp=mxk(1+(np-1)*framesamples:framesamples+(np-1)*framesamples);
zp=sum(mxkp.*dt);
if zp>0
No0=No0+1;
else
No1=No1+1;
end
end
if No0>No1
RXbits(n,nb)=0;
else
RXbits(n,nb)=1;
end
end
end
if HDSD==2 %软判决
for nb=1:numbit
mxk=mx(1+(nb-1)*bitsamples:bitsamples+(nb-1)*bitsamples);
zb=sum(mxk.*dt);
if zb>0
RXbits(n,nb)=0;
else
RXbits(n,nb)=1;
end
end
end
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?