⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 filer_qpsk4q.m

📁 cdma 系统级仿真
💻 M
字号:
%升余弦滤波器+PSK调制,%已生成QPSK和OQPSK信号,分别输出OQPSK信号的I、Q两路
function [x,y]=filer_QPSK4q(a,b)%
%生成随机数
Rb=800000;%码元速率819.2k
k=1;                %一个码元间隔包括1个载波周期
k2=8;
fc=k*Rb;                             %  载波频率,
fs=fc*k2;                             %  信号采样率
x_size=k*k2;
%y=1:x_size;                         %  采样时间序列,每个码元采x_size点
x_i=a;
x_q=b;
x_length=length(a);
%基带滤波
filtout_I= rcosflt(x_i,1,x_size,'fir',0.2);%利用现成的升余弦函数
filtout_Q= rcosflt(x_q,1,x_size,'fir',0.2);
filtoutI=filtout_I(2.5*x_size+1:x_length*x_size+2.5*x_size)';
filtoutQ=filtout_Q(2.5*x_size+1:x_length*x_size+2.5*x_size)';
%将i路提前半个码元,相当于将q路延迟半个码元
filtoutforeI=zeros(1,length(filtoutI));
filtoutforeI(1:length(filtoutI)-x_size/2)=filtoutI(x_size/2+1:length(filtoutI));

%产生载波
carry_i(1:x_length*x_size)=cos(2*pi*fc*(1:x_length*x_size)/fs+pi/4); 
carry_q(1:x_length*x_size)=sin(2*pi*fc*(1:x_length*x_size)/fs+pi/4); 
%BPSK调制
%s_i=filtoutI.*carry_i;
s_q=filtoutQ.*carry_q;
sfore_i=filtoutforeI.*carry_i;
x=s_q;
y=sfore_i;
%输出QPSK信号
%sqpsk=s_i+s_q;
% soqpsk=sfore_i+s_q;
% y=soqpsk;
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% fft_filtoutI=abs(fft(filtoutQ));             
% fft_soqpsk=abs(fft(soqpsk));             
% n=size(soqpsk,2);%FFT后数据点数目,d = size(X)返回二维向量,分别为矩阵X行数和列数
% f=1:fs/n:fs;
% m=fc/fs*n*2;       %此处m=fs/4=2fc
%  %图1,调制信号频谱图
% figure(1)
% subplot(2,1,1)
% %plot(f(1,1:m),fft_s_i(1,1:m))
% %title('信号频谱(BPSK)')
% %grid on
% %subplot(3,1,2)
% plot(f(1,1:m),fft_soqpsk(1,1:m))
% title('调制信号频谱')
% grid on
% subplot(2,1,2)
% plot(f(1,1:m),fft_filtoutI(1,1:m))
% title('基带信号频谱')
% grid on
% 
% 
% figure(2)
% subplot(3,1,1)
% plot(filtoutforeI(1:20*x_size))                   
% grid on
% title('I路码元信号')
% 
% subplot(3,1,2)
% plot(filtoutQ(1:20*x_size))         
% title('Q路码元信号')
% grid on
% subplot(3,1,3)
% plot(carry_i(1:20*x_size))
% title('载波')
% grid on
% 
% figure(4)
% subplot(3,1,1)
% plot(sfore_i(1:20*x_size)) 
% grid on
% title('I路BPSK调制信号')
% subplot(3,1,2)
% plot(s_q(1:20*x_size))
% title('Q路BPSK调制信号')
% grid on
% subplot(3,1,3)
% plot(soqpsk(1:20*x_size))
% title('OQPSK调制信号')
% grid on

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -