?? de_dcm_qpsk_mapping_psdu.m
字號:
function [out]=De_dcm_qpsk_mapping_psdu(datain,length,rate);
if(isequal(rate,[0 0 0 0 0])|isequal(rate,[0 0 0 0 1])|isequal(rate,[0 0 0 1 0])|isequal(rate,[0 0 0 1 1])|isequal(rate,[0 0 1 0 0]))
for i=1:length
if(real(datain(i))>=0)
temp((i-1)*2+1)=1;
else
temp((i-1)*2+1)=0;
end
if(imag(datain(i))>=0);
temp((i-1)*2+2)=1;
else
temp((i-1)*2+2)=0;
end
end
elseif(isequal(rate,[0 0 1 0 1])|isequal(rate,[0 0 1 1 0])|isequal(rate,[0 0 1 1 1]))
for i=1:(length/100)
for k=1:50
temp1(((i-1)*200+4*(k-1)+1):((i-1)*200+4*(k-1)+4))=soft_decision(datain((i-1)*100+k),datain((i-1)*100+50+k));
end
end
for i=1:(length/100)
for k=1:25
temp((i-1)*200+2*(k-1)+1)=temp1((i-1)*200+4*(k-1)+1);
temp((i-1)*200+2*(k-1)+2)=temp1((i-1)*200+4*(k-1)+2);
temp((i-1)*200+2*(k-1)+50+1)=temp1((i-1)*200+4*(k-1)+3);
temp((i-1)*200+2*(k-1)+50+2)=temp1((i-1)*200+4*(k-1)+4);
end
for k=26:50
temp((i-1)*200+2*(k-1)+50+1)=temp1((i-1)*200+4*(k-1)+1);
temp((i-1)*200+2*(k-1)+50+2)=temp1((i-1)*200+4*(k-1)+2);
temp((i-1)*200+2*(k-1)+100+1)=temp1((i-1)*200+4*(k-1)+3);
temp((i-1)*200+2*(k-1)+100+2)=temp1((i-1)*200+4*(k-1)+4);
end
end
end
out=temp;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -