txmask.m
来自「有关OFDM信道估计的matlab程序(其中包含英文简介和部分simulink模」· M 代码 · 共 66 行
M
66 行
%calculating PSD
x=ceil(rand(256,256)*2-1);
t4b5b=[1 1 1 1 0
0 1 0 0 1
1 0 1 0 0
1 0 1 0 1
0 1 0 1 0
0 1 0 1 1
0 1 1 1 0
0 1 1 1 1
1 0 0 1 0
1 0 0 1 1
1 0 1 1 0
1 0 1 1 1
1 1 0 1 0
1 1 0 1 1
1 1 1 0 0
1 1 1 0 1];
pspc=zeros(1,2048);
for i=1:256
%4b5b encoding
for j=1:4:256
xin=x(i,j:j+3);
xind=xin(1)*8+xin(2)*4+xin(3)*2+xin(4)+1;
xout=t4b5b(xind,:);
jj=1+(j-1)/4*5;
y(jj:jj+4)=xout;
end
xlin=zeros(1,321);
slv=0;
%MLT3 encoding
for j=1:320
if y(j)==1
if slv==0
xlin(j+1)=xlin(j)+1;
if xlin(j+1)>1
slv=1;
xlin(j+1)=0;
end
else
xlin(j+1)=xlin(j)-1;
if xlin(j+1)<-1
slv=0;
xlin(j+1)=0;
end
end
else
xlin(j+1)=xlin(j);
end
end
%To four times of sampling rate with proper rising time
xlinl=zeros(1,1281);
for j=1:319
xlinl(j*4+1:j*4+5)=xlinl(j*4+1:j*4+5)+xlin(j+1)*[0.5 1 1 1 0.5];
end
pspc=pspc+abs(fft(xlinl,2048));
end
pspc=pspc/256;
pspc=pspc.^2/100/0.001/125e6/4;
figure(1)
logpspc=10*log10(pspc(1:1024));
f=[1:2048]/2048*5e8;
plot(f(1:511),logpspc(1:511))
grid
xlabel('Frequency (Hz)')
ylabel('PSD (dBm/Hz)')
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?