直接序列扩频通信系统仿真程序hrbg.docx
直接序列列扩频通通信系统统仿真程程序杨晶超 s22007704116>> ccodee_leengtth=220; %信息息码元个个数>> NN=1:codde_llenggth;>> rrandd('sseedd',00);>> xx=siign(rannd(11,coode_lenngthh)-00.5); %信信息码>> ffor i=11:200 s(1+(i-1)*8000):ii*8000)=x(ii); %每个信信息码元元内含ffs/ff=8000个采采样点 eend生成的信信息码的的波形图图如图11所示。图1 信信源信息息码>> %产生伪伪随机码码,调用用的mggen函函数见附附录>> llenggth=1000*200; %伪码频频率5MMHz,每个信信息码内内含5MMHz/50kkHz=1000个伪码码>> xx_coode=siggn(mmgenn(199,8,lenngthh)-00.5); %把00,1序序列码变变换为-1,11调制码码>> ffor i=11:20000 w_codde(1+(i-11)*88):ii*8)=x_codde(ii); %每每个伪码码码元内内含8个个采样点点 eend生成的PPN码波波形如图图2所示。>> %扩频>> kk_coode=s.*w_ccodee; %k_codde为扩扩频码扩频码如如图3所示。图2 PN码码图3 扩扩频码>> %调制>> ffs=220e66;>> ff0=330e66;>> ffor i=11:20000 AII=2; dtt=fss/f00; n=0:ddt/77:dtt; %一个载载波周期期内采样样八个点点cI=AAI*ccos(2*ppi*ff0*nn/fss); siignaal(1+(i-11)*88):ii*8)=k_codde(1+(i-11)*88):ii*8).*ccI; eendPSK调调制后的的波形如如图4所示。图4 PSKK调制后后的波形形>> %解调>> AAI=11;>> ddt=ffs/ff0;>> nn=0:dt/7:ddt; %一个个载波周周期内采采样八个个点>> ccI=AAI*ccos(2*ppi*ff0*nn/fss);>> ffor i=1:220000 siggnall_h(1+(i-1)*8):i*88)=ssignnal(1+(i-1)*8):i*88).*cI; eend解调后的的波形如如图5所示。图5 解解调后的的波形>> %解扩>>jkk_coode=siggnall_h.*w_codde;>> %低通滤滤波>> wwn=55/10000000000; %截止止频率wwn=ffn/(fs/2),这里的的fn为为信息码码(扩频频码)的的带宽55M>> bb=fiir1(16,wn);>> HH=frreqzz(b,1,1160000);>> ssignnal_d=ffiltter(b,11, jjk_ccodee);解扩并滤滤波后的的波形如如图6所示。图6解扩扩并滤波波后的波波形从图形整整体看,解解扩出来来的信息息码与信信源信息息码基本本相同。输入与输出对比如图7所示。图7 输输入与输输出对比比附录:%mgeen.mmfuncctioonoout=mggen(g,sstatte,NN)gen=decc2biin(gg)-448;M=leengtth(ggen);curSStatte=ddec22binn(sttatee,M-1)-48;for k=11:N outt(k)=cuurSttatee(M-1); a=rrem(summ(geen(22:ennd).*cuurSttatee),22); currStaate=a currStaate(1:MM-2);end