📄 truwbrx.m
字号:
% TR-UWB Receiver
% Author: Caglar Arslan
% Date: 03-10-2007
%--------------------------------------------------------------------------
function [receivedData] = TRUWBRX(allPulsesWithNoise,numberOfBits,Tf,Nf,Td,fs,plotFlag);
% Sync Parameters
% Tf,Nf,Td
% Simulation Parameters
% fs,numberOfBits
Ts=Nf*Tf;
receivedSignal=allPulsesWithNoise;
%Delay the signal
signalLength=length(allPulsesWithNoise);
simulationDelay= Td*1e-9*fs;
receivedDelayedLength=signalLength+simulationDelay;
receivedSignalWithDelay=zeros(1,receivedDelayedLength);
receivedSignalWithDelay(1,simulationDelay+1:length(receivedSignalWithDelay))=allPulsesWithNoise;
if plotFlag==1
figure
tnew = 0 : 1/fs : numberOfBits*Ts*1e-9 + Td*1e-9;
plot(tnew,receivedSignalWithDelay)
end
%Multiply the received signal with the delayed version of it.
normalizedReceivedSignal=zeros(1,receivedDelayedLength);
normalizedReceivedSignal(1,1:length(receivedSignal))=receivedSignal;
crossMultipOfReceived=normalizedReceivedSignal.*receivedSignalWithDelay;
%Integration (Correlation) Integration Window = Ts*i to Ts*i+1 ,
%i=0,1,2,3....numberOfBits*Nf
%For the numerical integration, trapezoidal numeric integration method is
%used
iW=Ts*1e-9*fs; %The integration window length
for i=1:numberOfBits
res=trapz(crossMultipOfReceived( (iW*(i-1))+1 :iW*i));
if res>0
receivedData(i)=1;
else
receivedData(i)=-1;
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -