資源簡(jiǎn)介
直接序列的matlab仿真,直接出圖的,直接就可用
代碼片段和文件信息
function?[Y]=DSSS(Xmode)
%完成DSSS調(diào)制功能
%mode=[12].?1進(jìn)行調(diào)制,2進(jìn)行解調(diào),未指定時(shí)自動(dòng)完成調(diào)制和解調(diào)兩個(gè)功能
switch?nargin
????case?0
????????X=‘This?is?a?test.‘;
?????????Y=DSSS(X);
????????return
????case?1
????????Y1=DSSS(X?1);
????????Y2=DSSS(Y1?2);
????????Y=Y2;
????????return
????case?2
????????if?mode==1%調(diào)制
????????????D=ones(17);
????????????m_sequence=Msequence(D);
????????????X_length=length(X);
????????????ascii_value=abs(X);
????????????ascii_binary=zeros(X_length7);
????????????%將數(shù)據(jù)轉(zhuǎn)換為ASCII二進(jìn)制碼
????????????for?ii=1:X_length
????????????????ascii_binary(ii:)=Binary(ascii_value(ii));
????????????end
????????????figure(1);subplot(211);plot(reshape(ascii_binary1X_length*7));title(‘A:輸入數(shù)據(jù)‘);grid?on;
????????????%擴(kuò)頻
????????????Sp_expand=zeros(X_length127*7);
????????????for?ii=1:X_length
????????????????for?jj=1:7
????????????????????Sp_expand(ii127*jj-126:127*jj)=xor(m_sequenceascii_binary(iijj));
????????????????end
????????????end
????????????figure(2);plot(reshape(Sp_expand1X_length*127*7));title(‘B:數(shù)據(jù)擴(kuò)展‘);
????????????%將擴(kuò)頻碼轉(zhuǎn)換為BPSK(1,-1)序列
????????????for?ii=1:X_length
????????????????for?jj=1:127*7
????????????????????if~(Sp_expand(iijj))
????????????????????????Sp_expand(iijj)=-1;
????????????????????end
????????????????end
????????????end
????????????Sp_expand_bpsk=reshape(Sp_expand1X_length*127*7);
????????????figure(3);plot(Sp_expand_bpsk);title(‘C:BPSK調(diào)制‘);
????????????Y=Sp_expand_bpsk;
????????elseif?mode==2%解調(diào)
????????????D=ones(17);
????????????m_sequence=Msequence(D);
????????????%將BPSK雙極性轉(zhuǎn)換為單極性
????????????l=length(X)/(127*7);
????????????X_length=length(X);
????????????for?ii=1:X_length
????????????????if?X(ii)==-1
????????????????????X(ii)=0;
????????????????end
????????????end
????????????Sp_expand=
評(píng)論
共有 條評(píng)論