首页 > 编程知识 正文

基于matlab的psk调制解调实验报告,matlab仿真频率调制与解调

时间:2023-05-06 18:24:43 阅读:181850 作者:4246

QPSK调制解调目录一、仿真要求二、仿真方案详细设计三、仿真结果与结论1 .仿真结果2 .仿真结论四、主要仿真代码

一.模拟要求

描绘了基于QPSK信号的信息、I路、q路信号的比较图和在接收端解调的I路、q路、信息恢复的比较图。

二.模拟方案的详细设计

三.模拟结果和结论1 .模拟结果

2 .模拟结论

四.主要模拟代码clear all; clc; N=20; %比特数T=1; %位周期fc=2; %载频Fs=100; %采样频率bitstream=精明的犀牛([ 0,1 ],1,n ); %随机发生的位数0,1 bitstream=2* bitstream-1; %单极性为双极(0到-1; 1到1 ) I=[]; Q=[]; %奇数进制I路、偶数进制q路forI=1:nifmod(I,2 ) ) (~=0 I=[I,bitstream(i ) I]; 使用else Q=[Q,Bitstream(I ) ]结束%图来确定I,q比特流bit_data=[]; for i=1:N bit_data=[bit_data,Bitstream(I ) *ones(1,T*Fs ) ] %1位周期中有T*Fs个1与采样点一模一样的endi Q_data=[]; 由于for i=1:N/2 %I路和q路是原比特周期的2倍,2Tb=Ts (符号周期),所以采样点数为T*Fs*2 I_data=[I_data,I ] I ) * ones %时间轴t=0:1/Fs:N*T-1/Fs; subplot (t (3,1,1 ) plot ) t,bit_data; egend(Bitstream ) %比特信息subplot(t ) 3,1,2 ) plot ) t,I_data ); egend(IBitstream ) %I加载信息subplot(t ) 3,1,3 ) plot ) t,Q_data ); legend(qBitstream ) (q路信息)载波信号bit_t=0:1/Fs:2*T-1/Fs; %载波周期是2倍比特周期,定义时间轴%,I路和q路的载波I_carrier=[]; Q_carrier=[]; fori=1: n/2i _ carrier=[ I _ carrier,I(I ) * cos ]2* pi * fc * bit _ t ]; %I路载波信号Q_carrier=[Q_carrier,q(I ) *cos )2* pi * fc * bit _ TPI/2 ] % q路载波信号end%传输信号qpsk _ signal=I %绘图文件(; %生成新的图subplot (t (3,1,1 ) plot ) t,I_carrier ); egend(Isignal ) %I加载信号subplot(t ) 3,1,2 (plot ) t,Q_carrier ); legend(qsignal ) %Q加载信号subplot(t ) 3,1,3 ) plot ) t,QPSK_signal ); legend(qpsksignal ) %I负载、q负载和的信号snr=1; %双相比%接收信号qpsk_receive=awgn(qpsk_signal,snr ); %%awgn ()加噪(解调fori=1: n/2i _ output=qpsk _ receive (1,(i-1 ) *Length ) bit_t ) 1:I*Length ) elseI_recover(I )=-1; endq_output=qpsk_receive(1,(i-1 ) *length ) bit_t ) 1:I*length ) bit_t ).*cos )2*pi*fc* elseq_recover(I )=-1; endend%并/串转换bit_recover=[]; forI=1:nifmod(I,2 ) (~=0 bit_recover=[bit_recover,I_recover((I-1 )/2 ) ]; %奇数是I加载信息else bit_recover=[bit_recover,q_recover(I/2 ) ]; %偶数取q路径信息endend%进行绘图比较I,q比特流recover_data=[]; fori=1: n recover _ data=[ recover _ data,bit_recover(I ) *ones(1,T*Fs ) ]; endI_recover_data=[]; Q_recover_data=[]; fori=1: n/2i _ recover _ data=[ I _ recover _ data,I_recover(I ) *ones(1,T*Fs*2) ]; Q_recover_data=[Q_recover_data,q_recover(I ) *Ones(1,T*Fs*2) ] end%出图figure (; t=0:1/Fs:N*T-1/Fs; subplot (t (3,1,1 ) plot ) t,recover_data; legend(bitstream ) %恢复的比特信息subplot(t ) 3,1,2 (plot ) t,I_recover_data; legend(IBitstream ) %恢复的I加载信息subplot(t ) 3,1,3 ) plot ) t,Q_recover_data ); Legend(qBitstream ) %恢复的q负载信息这次QPSK调制和解调实验的过程就是这样,不足以欢迎评论。 祝你好运。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。