?? main.m
字號(hào):
fs=40*2e3; % Sampling frequency
Fn=fs/2; % Nyquist frequency
Ts=1/fs;
g=19;%二進(jìn)制轉(zhuǎn)化為十進(jìn)制
state=1;
N=128 ; % Number of data bits(bit rate)
noise_offset=0;
chip_rate = 20000 %chip rate
fcarr=20000 %carrier frequency in Hz (0 to 40kHz)
T=1/N;
td=[0:Ts:(N*T)-Ts];
[data,data2,Isymbols,Qsymbols]=serial_to_parallel(N);
Isymbols=Isymbols';
Qsymbols=Qsymbols';
[seq1,seq2]=a_prnseq(chip_rate);
%seq1
%seq2
%[pt]=mgen(g,state,chip_rate); %pt是m序列 有兩個(gè)碼片的延時(shí)
%pt=2*pt-1;%雙極性碼
%pt1=chouyang(pt,chip_rate,2);
%seq1=pt1;
%seq2=pt1;
[sig1,sig2]=spreader(Isymbols,Qsymbols,seq1,seq2,N);
%sig1
%sig2
[msumiq,sumiq,cs_t,sn_t,tiq]=qpsk_mod(sig1,sig2,Isymbols,Qsymbols,N,fcarr);
%transmitted signal at this point
[rnd_noise,nb_noise]=noise(sumiq,tiq,N,noise_offset);
nb_noise=0;
no_noise_sumiq=sumiq;sumiq=sumiq+nb_noise;
no_noise_msumiq=msumiq;msumiq=msumiq+nb_noise;
sumiq=conv(sumiq,[1,0,1]);
ssumiq(1)=sumiq(1)+sumiq(40001);
ssumiq(2)=sumiq(2)+sumiq(40002);
for i=3:40000
ssumiq(i)=sumiq(i);
end
sumiq=ssumiq;
%Received signal
%[bit_errs_qpsk,bitout1,bitout2,ycfo1,ycfo2]=demod(msumiq,cs_t,sn_t,tiq,data,N,fcarr);
%[bit_errs_qpsk,bitout1,bitout2,ycfo1,ycfo2]=demod1(msumiq,cs_t,sn_t,tiq,data,N,fcarr);
[bit_errs_ss,i_out,q_out]=despread(tiq,sumiq,cs_t,sn_t,seq1,seq2,data,N,fcarr);
[bit_errs_ss,i_out1,q_out1]=despread1(tiq,sumiq,cs_t,sn_t,seq1,seq2,data,N,fcarr);
i_out=(i_out+i_out1)/2;
q_out=(q_out+q_out1)/2;
bit5=sign(i_out);%+/-1
bit6=sign(q_out);%+/-1
shaped_ibit=bit5 >0;%0 and 1
shaped_qbit=bit6 >0;%0 and 1
i_out=[shaped_ibit]';%transpose
q_out=[shaped_qbit]';%transpose
%dataout=partoser(i_out,q_out);
x=1;
for i=(fs/N-2):(fs/N):39998
serial(x)=(i_out(i)+i_out(i+1)+i_out(i+2))/3;
x=x+1;
serial(x)=(q_out(i)+q_out(i+1)+q_out(i+2))/3;
x=x+1;
end
serial_1=serial >.5;
serial=chouyang(serial_1,128,625);
figure(15)
subplot(3,1,1)
plot(td,serial)
axis([0 20/N -2 2]);
grid on
xlabel(' Time')
ylabel('Amplitude')
title(' Data')
subplot(3,1,2)
plot(tiq,i_out)
axis([0 20/N -2 2]);
grid on
xlabel(' Time')
ylabel('Amplitude')
title(' I Channel Data')
subplot(3,1,3)
plot(tiq,q_out)
axis([0 20/N -2 2]);
grid on
xlabel(' Time')
ylabel('Amplitude')
title(' Q Channel Data')
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -