資源簡介
qpsksys.rar

代碼片段和文件信息
%??QPSK系統(tǒng)的仿真?文件名為:qpsksys.m
clear?all
close?all
M?=?4;??%?QPSK
EsN0dB?=?3:0.5:10;
EsN0?=?10.^(EsN0dB/10);
Es?=?1;
N0?=?10.^(?-EsN0dB/10?);
sigma?=?sqrt(N0/2);
error?=?zeros(1length(EsN0dB));
s_data?=?zeros(1length(EsN0dB));
for?k?=?1:length(EsN0dB)
????error(k)?=?0;
????s_data(k)?=?0;
????while?error(k)<1000
??????????%?產生信源1,2,3,4均勻分布
??????????d?=?ceil(?rand(110000)*M?);
??????????%?調制成QPSK信號(復基帶信號形式)
??????????s?=?sqrt(Es)*exp(j*2*pi/M*(d-1));
??????????%?加入信道噪聲(復噪聲)
??????????r?=?s?+?sigma(k)*(?randn(1length(d))?+?j*randn(1length(d))?);
??????????%?判決
??????????for?m?=?1:M?????%?計算距離
??????????????rd(m:)?=?abs(?r?-?sqrt(Es)*exp(j*2*pi/M*(m?-?1))?);
??????????end
??????????for?m?=?1:length(s)???%?判決距離最近的點
??????????????dd(m)?=?find(?rd(:m)?==?min(?rd(:m))?);
??????????????if?dd(m)?~=?d(m)
??????????????????error(k)?=?error(k)?+1;
??????????????end
??????????end
??????????s_data(k)?=?s_data(k)?+10000;
????end
????%?drawnow
????%?semilogy(EsN0dBerror./(s_data?+?eps));?hold?on
end
Pe?=?error./s_data;
%?理論計算的誤碼率結果
Ps?=?erfc(sqrt(EsN0)*sin(pi/M));
semilogy(EsN0dBPe‘b*?-‘);?hold?on;
semilogy(EsN0dBPs‘rd?-‘);
xlabel(‘Es/N0(dB)‘);?ylabel(‘誤碼率‘);
legend(‘仿真結果‘‘理論計算結果‘);
grid?on;
title(‘QPSK系統(tǒng)的誤碼率‘);
??????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????22016??2010-06-21?18:00??qpsksys\qpsksys.doc
?????文件???????1379??2010-06-21?18:01??qpsksys\qpsksys.m
?????目錄??????????0??2010-06-21?17:49??qpsksys
-----------?---------??----------?-----??----
????????????????23395????????????????????3
- 上一篇:PTS方法降低PAPR的仿真代碼
- 下一篇:Tasi和張正友兩種方法仿真程序
評論
共有 條評論