📄 jiekuo.asv
字号:
%此函数的目的是为了进行接扩和进行I,Q通路的解调
%抽样判决最后输出基带信号
function [dianshu,w]=jiekuo(R,ft,Ts,N,fc,sqe)
T=0.001/N;
tdi=0:2*Ts:N*T-Ts;
s1=R.*cos(2*pi*ft*tdi);
%设计滤波器
fs=1/Ts;
[b,a]=ellip(6,0.5,50,15e6*4/fs,'low'); %改成15m
k2=filter(b,a,s1)
figure(4)
subplot(212);
plot(tdi,k2);
title('去载波后的s(t)图形');
xlabel('时间坐标tdi');
%===============================================================
%=============================================================
%射频滤波器的幅频相应 第三十个图
[H,w]=freqz(b,a,512); %H 为滤波器的系统函数
figure(30)
plot(w*fs/(4*pi),abs(H));
title('IIR低通滤波器幅频响应 为了滤除射频频率' );
xlabel(' Frequency(Hz)' );
ylabel(' Magnitude of frequencyresponse' );
%===============================================================
%==========================================================
%画的解调的时候乘上本地载波 但是没有经过滤波器的频谱 第十九个图
kk1=fft(s1,1024);
w=(0:511)/512*(fs/4);
figure(19)
plot(w,abs(kk1(1:512)'));
title(' 没去载波的频谱' );
set(gcf,'color' ,'white' );
xlabel(' Frequency(Hz)' );
ylabel(' Mag.of frequency response' ); grid;
%================================================================
%==================================================================
%第二十一个图 射频解调后通过低通滤波器后的频谱图形
kk=fft(k2,1024);
w=(0:511)/512*(fs/4);
figure(21)
plot(w,abs(kk(1:512)'));
title('经过低通后的频谱s(t)' );
set(gcf,'color' ,'white' );
xlabel(' Frequency(Hz)' );
ylabel(' Mag.of frequency response' ); grid;
%===============================================================
%=================================================================
%通道解调
%=================================================================
%I通路解调
r1=k2.*cos(2*pi*fc*tdi);
%===========================
%信号经过乘I通道的载波后的频谱
ddd=fft(r1,1024);
w=(0:511)/512*(fs/4);
figure(22)
plot(w,abs(ddd(1:512)'));
title('乘以通道载波后没有经过低通滤波器的信号的频谱' );
set(gcf,'color' ,'white' );
xlabel(' Frequency(Hz)' );
ylabel(' Mag.of frequency response' ); grid;
%==================================
%设计I通道的低通滤波器
[b,a]=ellip(4,0.5,50,3e6*2/fs,'low'); %得到滤波器的系数矩阵
k3=filter(b,a,r1) %k3是I通道经过低通滤波器后信号
figure(6)
subplot(211);
plot(tdi,k3);
axis([0 0.001 -2 2]);
title('解调出来的I通道双极性波形');
xlabel('时间轴');
%======================================================================
%乘上载波后经过低通滤波器后的频谱
ddd1=fft(k3,1024);
w=(0:511)/512*(fs/4);
figure(23)
plot(w,abs(ddd1(1:512)'));
title('乘以通道载波后经过低通滤波器的信号的频谱' );
set(gcf,'color' ,'white' );
xlabel(' Frequency(Hz)' );
ylabel(' Mag.of frequency response' ); grid;
%=========================================================================
%画IQ通道的滤波器的幅频相应 第三十一图 是IQ通道滤波器的幅频相应
[H,w]=freqz(b,a,512);
figure(31)
plot(w*fs/(4*pi),abs(H));
title('低通滤波器的幅频相应' );
xlabel(' Frequency(Hz)' );
ylabel(' Magnitude of frequencyresponse' );
%=======================================================================
figure(7)
subplot(212)
k8=sign(k3);
plot(tdi,k8);
title('解调出来的I通道双极性波形');
xlabel('时间轴');
axis([0 0.001 -2 2]);
%================================================
%Q通路解调
%===================================================
r2=k2.*(-sin(2*pi*fc*tdi));
%==================================
%设计Q通道的低通滤波器
[b,a]=ellip(4,0.5,50,3e6*2/fs,'low'); %得到滤波器的系数矩阵
k4=filter(b,a,r2) %k3是I通道经过低通滤波器后信号
figure(6)
subplot(212);
plot(tdi,k4);
axis([0 0.001 -2 2]);
title('解调出来的Q通道双极性波形');
xlabel('时间轴');
figure(8)
subplot(212)
k9=sign(k4);
plot(tdi,k9);
title('解调出来的Q通道双极性波形');
xlabel('时间轴');
axis([0 0.001 -2 2]);
dianshu=50:100:length(k8);
j=50;
for i=1:length(dianshu);
outi(i)=k8(j+(i-1)*100);
end;
j=50;
for i=1:length(dianshu);
outq(i)=k9(j+(i-1)*100);
end;
%产生N个M序列,以便解调
xulie1=ones(1,N/2);
for i=1:length(xulie1),
if(xulie1(i)==1),
for j=1:length(sqe),
jiekuo1((i-1)*length(sqe)+j)=sqe(j);
end
end
end;
xulie2=ones(1,N/2);
for i=1:length(xulie2),
if(xulie2(i)==1),
for j=1:length(sqe),
jiekuo2((i-1)*length(sqe)+j)=sqe(j);
end
end
end;
for i=1:length(jiekuo1)
if(jiekuo1==1)
jiekuo1=1
else jiekuo1=-1
end
end
jiekuohouI=jiekuo1.*outi;
jiekuohouQ=jiekuo2.*outq;
figure(9)
subplot(211);
t=linspace(0,0.001,length(jiekuohouI));
plot(t,jiekuohouI);
axis([0 N*T -1.5 1.5])
title('I接扩后图形')
xlabel('时间轴')
subplot(212)
t=linspace(0,0.001,length(jiekuohouQ));
plot(t,jiekuohouQ);
axis([0 N*T -1.5 1.5])
title('Q接扩后图形')
xlabel('时间轴')
dianshu=125:255:length(jiekuohouI);
j=125;
for i=1:length(dianshu);
kki(i)=jiekuohouI(j);
j=j+255;
end;
j=125;
for i=1:length(dianshu);
kkq(i)=jiekuohouQ(j);
j=j+255;
end;
figure(11)
y(1,:)=kki; %I通道随即信号
y(2,:)=kkq;
xx=reshape(y,1,N);
stem(xx(1:N),'fill','--');
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -