欢迎来到天天文库
浏览记录
ID:38190184
大小:580.00 KB
页数:5页
时间:2019-05-25
《扩频与解扩程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、扩频设计——直扩系统设计原理:产生一个伪随机码,与信息吗相乘,从而得到扩频码,使得原来的信息码频带扩展,以增加频带的代价换取加密,增强抗干扰性,达到可靠通信的目的。实现程序如下:code_length=20;%信息码元个数N=1:code_length;rand('seed',0);x=sign(rand(1,code_length)-0.5);%信息码fori=1:20s((1+(i-1)*800):i*800)=x(i);%每个信息码元内含fs/f=800个采样点end%产生伪随机码,调用的mgen函数见最后length
2、=100*20;%伪码频率5MHz,每个信息码内含5MHz/50kHz=100个伪码x_code=sign(mgen(19,8,length)-0.5);%把0,1序列码变换为-1,1调制码fori=1:2000w_code((1+(i-1)*8):i*8)=x_code(i);%每个伪码码元内含8个采样点end%生成的PN码波形如图2所示。%扩频k_code=s.*w_code;%k_code为扩频码%调制fs=20e6;f0=30e6;fori=1:2000AI=2;dt=fs/f0;n=0:dt/7:dt;%一个载波周
3、期内采样八个点cI=AI*cos(2*pi*f0*n/fs);signal((1+(i-1)*8):i*8)=k_code((1+(i-1)*8):i*8).*cI;end%PSK调制后的波形如图4所示。%解调AI=1;dt=fs/f0;n=0:dt/7:dt;%一个载波周期内采样八个点cI=AI*cos(2*pi*f0*n/fs);fori=1:2000signal_h((1+(i-1)*8):i*8)=signal((1+(i-1)*8):i*8).*cI;end%解扩jk_code=signal_h.*w_code;%
4、低通滤波wn=5/10000000;%截止频率wn=fn/(fs/2),这里的fn为信息码(扩频码)的带宽5Mb=fir1(16,wn);H=freqz(b,1,16000);signal_d=filter(b,1,jk_code);end%要调用的函数mgen.mfunction[out]=mgen(g,state,N)gen=dec2bin(g)-48;M=length(gen);curState=dec2bin(state,M-1)-48;fork=1:Nout(k)=curState(M-1);a=rem(sum(g
5、en(2:end).*curState),2);curState=[acurState(1:M-2)];end%解调后的波形如图5所示。图5解调后的波形从图形整体看,解扩出来的信息码与信源信息码基本相同。输入与输出对比如图7所示。图7输入与输出对比生成的信息码的波形图如图1所示。图1信源信息码扩频码如图3所示。图2PN码图3扩频码图4PSK调制后的波形解扩并滤波后的波形如图6所示。图6解扩并滤波后的波形
此文档下载收益归作者所有