资源描述:
《UWB 超宽带技术 源代码.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、BIT:产生原信号二进制比特流PPM-TH:进行PPM-TH调制Repcode:进行重复编码TH:产生TH码TRANSMITTER_2PPM_TH:产生UWB信号waveform:产生功率归一化的脉冲波形1、FUNCTION:"bit"%产生二进制原信号%原信号比特数numbis作为输入function[bits]=bit(numbits)bits=rand(1,numbits)>0.5;%rand产生的是在0~1上均匀分布的随机数%这些数>0.5的几率各是一半,即bis为0,1的几率各半3、FUNCTION:"
2、repcode"%产生重复编码%'Ns':码元重复数function[repbits]=repcode(bits,Ns)numbits=length(bits);temprect=ones(1,Ns);temp1=zeros(1,numbits*Ns);temp1(1:Ns:1+Ns*(numbits-1))=bits;temp2=conv(temp1,temprect);repbits=temp2(1:Ns*numbits);3、FUNCTION:"PPM_TH"%引入TH码并进行PPM调制%参数如下:%'se
3、q':二进制源码%'fc':抽样频率%'Tc':时隙长度%'Ts':脉冲平均重复周期%'dPPM':PPM引入的时移%'THcode':TH码%产生两个输出:%'2PPMTHseq':TH和PPM共同调制信号%'THseq':未经PPM调制的信号function[PPMTHseq,THseq]=PPM_TH(seq,fc,Tc,Ts,dPPM,THcode)%调制dt=1./fc;framesamples=floor(Ts./dt);%每个脉冲的样本数chipsamples=floor(Tc./dt);PPMsa
4、mples=floor(dPPM./dt);THp=length(THcode);totlength=framesamples*length(seq);PPMTHseq=zeros(1,totlength);THseq=zeros(1,totlength);%引入TH码和PPM%s(t)=sum(p(t-jTs-CjTc-aE))fork=1:length(seq)%脉冲位置,表示第几个脉冲-jTsindex=1+(k-1)*framesamples;%引入TH码,-CjTc,表示第几个时隙kTH=THcode(
5、1+mod(k-1,THp));index=index+kTH*chipsamples;THseq(index)=1;%引入PPM时移,-aE,表示在时隙内的位置index=index+PPMsamples*seq(k);PPMTHseq(index)=1;end4、FUNCTION:"TH"%产生TH码%Np:跳时码周期%Nh:跳时码最大上界function[THcode]=TH(Nh,Np);THcode=floor(rand(1,Np).*Nh);5、FUNCTION:"transmitter_2PPM_T
6、H"%产生UWB信号%参数定义如下:%Pow:传输功率%fc;抽样频率%numbits:信号比特数%Ns:每比特脉冲数%Np:跳时码周期%Nh:跳时码最大上界%Ts:脉冲重复周期.%Tc:时隙大小%Tm:脉冲持续时间%tau:脉冲成形因子%dPPM:PPM引入时移%返回值:%bits:产生比特流%THcode:TH码%Stx:产生信号%ref:未经调制的参照信号function[bits,THcode,Stx,ref]=transmitter_2PPM_TH(fc,numbit,Ns,Ts,dPPM)%输入参数P
7、ow=-30;numbits=numbit;Tc=1e-9;Nh=10;Np=5;Tm=0.5e-9;tau=0.2e-9;G=1;%模拟发射步骤%二进制原信号bits=bit(numbits);repbits=repcode(bits,Ns);%重复编码THcode=TH(Nh,Np);%产生TH码[PPMTHseq,THseq]=PPM_TH(repbits,fc,Tc,Ts,dPPM,THcode);%调制%成形滤波power=(10^(Pow/10))/1000;Ex=power*Ts;w0=wavefo
8、rm(fc,Tm,tau);wtx=w0.*sqrt(Ex);Sa=conv(PPMTHseq,wtx);Sb=conv(THseq,wtx);%产生输出信号L=floor((Ts*fc))*Ns*numbits;Stx=Sa(1:L);ref=Sb(1:L);ifG%绘图F=figure(1);set(F,'Position',[30120700400]);clatma