资源简介
本文完成OFDM通信系统在16QAM下的仿真工作,给出了前两百点发送和接收到的消息对比,并计算误比特率
代码片段和文件信息
clear;
clc;
subcarr=64; %子载波个数
sym_c=10; %每个子载波含有的OFDM符号数
bit_sym=4; %每个符号含有的比特数,16QAM调制
IFFT_n=64; %IFFT点数
r=1/10; %保护间隔和OFDM数据的比例;
SNR=20; %信噪比 dB
%产生信号
sum=subcarr*sym_c*bit_sym;%总比特数量64*10*4=2560bits
signal=rand(1sum)<0.5; %初始信号
%16QAM调制QAM_sig里面存放的是调制后的信号,数目为sumQ
sumQ=sum/4;
imagine=sqrt(-1); %产生虚数单位 j
QAM=[-3-3*imagine-1-3*imagine3-3*imagine1-3*imagine-3-1*imagine-1-1*imagine3-1*imagine1-1*imagine-3+3*imagine-1+3*imagine3+3*imagine1+3*imagine-3+1*imagine-1+1*imagine3+1*imagine1+1*imagine]; %创建QAM 映射表
SIGNAL=zeros(1sumQ); %计算并存放调制前的十进制数据
QAM_sig=zeros(1sumQ); %存放调制后的QAM信号
y_receive_bit=zeros(1sum);%存放解调后的比特符号
for n=1:sumQ
SIGNAL(n)=signal(4*n-3)*8+signal(4*n-2)*4+signal(4*n-1)*2+signal(4*n); %将二进制换算成十进制,存放调制前的十进制数据
end
for i=1:sumQ
if SIGNAL(i)==0
QAM_sig(i)=QAM(1);
elseif SIGNAL(i)==1
QAM_sig(i)=QAM(2);
elseif SIGNAL(i)==2
QAM_sig(i)=QAM(3);
elseif SIGNAL(i)==3
QAM_sig(i)=QAM(4);
elseif SIGNAL(i)==4
QAM_sig(i)=QAM(5);
elseif SIGNAL(i)==5
QAM_sig(i)=QAM(6);
elseif SIGNAL(i)==6
QAM_sig(i)=QAM(7);
elseif SIGNAL(i)==7
QAM_sig(i)=QAM(8);
elseif SIGNAL(i)==8
QAM_sig(i)=QAM(9);
elseif SIGNAL(i)==9
QAM_sig(i)=QAM(10);
elseif SIGNAL(i)==10
QAM_sig(i)=QAM(11);
elseif SIGNAL(i)==11
QAM_sig(i)=QAM(12);
elseif SIGNAL(i)==12
QAM_sig(i)=QAM(13);
elseif SIGNAL(i)==13
QAM_sig(i)=QAM(14);
elseif SIGNAL(i)==14
QAM_sig(i)=QAM(15);
elseif SIGNAL(i)==15
QAM_sig(i)=QAM(16);
end
end
%串/并转换
%计算第i个载波上面的信号to_par(i,:)
colume=sumQ/subcarr;%符号数除以子载波数,得出每个子载波运送的符号数
for i=1:subcarr % carr载波个数
for j=1:colume
to_par(ij)=QAM_sig(i+subcarr*(j-1));%填充矩阵的元素
%子载波数作为矩阵行数,单个子载波运送的符号数作为矩阵列数
%subcarr-by-colume,64行x10列的矩阵
end
end
%colume=sumQ/subcarr;
% % to_par=reshape(QAM_sigsubcarrcolume);
%每个子载波上进行 IFFT变换 (调制后的QAM信号进行IFFT)
for j=1:colume
y(:j)=ifft(to_par(:j)); %64点IFFT
end
% % y=ifft(to_par);
yr=real(y); %实部
yi=imag(y); %虚部
%yi=(y-yr)*sqrt(-1)*(-1);
%加入保护间隔
CP_len=r*colume; %保护间隔长度
yr=[yr(:colume-CP_len+1:colume)yr];%实部:将
- 上一篇:matlab 随机模拟
- 下一篇:滑模电流观测器
相关资源
- OFDM仿真的星座图
- 多进制MASK MPSK MFSK MQAM matlab仿真程序
- OFDM中降低PAPR的两种方法SLM和PTS
- OFDM_16QAM
- OFDM同步算法之Park算法
- MATLAB实现的M进制正交幅度调制(MQA
-
16QAM matlab/simuli
nk仿真 - MIMO-OFDM无线通信matlab代码
- ofdm系统完整程序
- OFDM同步算法matlab实现
- MQAM和MPSK误符号率曲线绘制
- 16QAM研究,眼图,星座图,误码率,噪
- OFDM同步算法之SC算法
- qam_rayleigh.m
- qam星座图仿真
- ofdm 基于matlab的仿真
-
simuli
nk QAM - MATLAB仿真AWGN信道中,16QAM和64QAM在不同
- 基于不同调制方式16QAM、64QAM、QPSKOF
- 16QAM调制系统仿真
- 基于遗传算法的OFDM自适应资源分配算
- OFDM通信系统的Matlab仿真 源程序 m文件
- MIMO-OFDM不同信道估计的对比matlab代码
- 任意发送天线,任意接收天线的STBC
- Matlab仿真ACO-OFDM信号发送与接收
- OFDM同步算法中的最大似然函数法程序
- 基于k-D树邻近点的彩色星座图绘制
- bpsk qpsk 16qam 的ber方针matlab
- ofdm调制解调程序
- SFBC在OFDM系统中传输
评论
共有 条评论