資源簡介
包含一個word文檔和m文件!
另外,對科技咨詢感興趣的,可以來我的博客,www.techfans.net,和我一起探討

代碼片段和文件信息
%本程序模擬2用戶CDMA系統,信道為加性高斯信道,可以正確解擴解調,
%信噪比(dB)約為5的時候,誤碼率基本在0.1以內
%信噪比(dB)大于9的時候,基本不會出現誤碼了
%本程序中時間單位是微秒
%頻率單位為MHz
%碼元速率單位是Mb/s
global?dt?df?t?f?N
close?all
N=2^14;???%采樣點數
L=64;?????%每碼元的采樣點數
M=N/L;?????%碼元數
Rb=2;
Ts=0.5; %碼元寬度是0.5us
dt=Ts/L;????????
df=1/(N*dt);?????%MHz
T=N*dt;??????????%截短時間
Bs=N*df/2;???????%系統帶寬
w0=28*pi;
Eb_N0=input(‘請輸入信噪比dB(5以上基本無誤碼)‘);
t=[-T/2+dt/2:dt:T/2];?%時域橫坐標
f=[-Bs+df/2:df:Bs];???%頻域橫坐標
figure(1)
set(1‘Position‘[10600400150])
????????????????%設定圖1的窗口位置及大小?
figure(2)
set(2‘Position‘[10400400150])
????????????????%設定圖2的窗口位置及大小?
????????????????
figure(3)
set(3‘Position‘[10200400150])
????????????????%設定圖3的窗口位置及大小?
?????
figure(4)
set(4‘Position‘[100400150])
????????????????%設定圖4的窗口位置及大小?
????????????????
figure(5)
set(5‘Position‘[430600400150])
????????????????%設定圖1的窗口位置及大小?
figure(6)
set(6‘Position‘[430400400150])
????????????????%設定圖2的窗口位置及大小?
????????????????
figure(7)
set(7‘Position‘[430200400150])
????????????????%設定圖3的窗口位置及大小?
?????
figure(8)
set(8‘Position‘[4300400150])
????????????????%設定圖4的窗口位置及大小
figure(9)
set(9‘Position‘[850600400150])
????????????????%設定圖3的窗口位置及大小?
?????
figure(10)
set(10‘Position‘[850400400150])
????????????????%設定圖4的窗口位置及大小
????????
figure(11)
set(11‘Position‘[850200400150])
????????????????%設定圖3的窗口位置及大小?
?????
figure(12)
set(12‘Position‘[8500400150])
????????????????%設定圖4的窗口位置及大小
????????????????
m1=[1?1?1?-1?-1?1?-1?1?1?-1?1?-1?1?-1?-1];??????????%用戶一的m序列
m2=[1?1?-1?-1?1?-1?1?1?1?-1?-1?1?-1?-1?1];??????????%用戶二的m序列
%%%%%%%%%%%%%%%%%%%%%%%%%%?生成噪聲,信噪比為11
%Eb_N0=11??%Eb/N0?in?dB
eb_n0=10^(Eb_N0/10);
Eb=1;
n0=Eb/eb_n0;?%信道的噪聲譜密度???
sita=n0*Bs;?%信道中噪聲功率
n_ch=sqrt(sita)*randn(size(t));?%信道噪聲
NOISE=abs(t2f(n_ch));
%%%%%%%%%%%%%%%%%%%%%%%%%%%產生用戶1的數字基帶信號供傳輸
n=1;??%每次有偶數個1
while?rem(n2)~=0
????a=round(rand(1M));
????n=length(find(a==1));
end
aaa=a;???????????%保存原序列(0、1),供最后比較誤碼率使用
aa=find(a==0);???%將(0、1)序列變換為(+1、-1)序列,以方便擴頻使用?????????
a(aa)=-ones(size(aa));
nrz1=zeros(LM);????????%將序列擴展成為時域,方便做F變換和時域顯示
for?loop=1:Lnrz1(loop:)=a;?end
nrz1=reshape(nrz11N);
%%%%%%%%%%%%%%%%%%%%%%%%%%%產生用戶2的數字基帶信號供傳輸
n=1;??%每次有偶數個1
while?rem(n2)~=0
????b=round(rand(1M));
????n=length(find(b==1));
end
bbb=b;
bb=find(b==0);???%bb是a中奇序數1的位置???????????
b(bb)=-ones(size(bb));?%所有位于cc的0變成-1
nrz2=zeros(LM);
for?loop=1:L
????nrz2(loop:)=b;
end
nrz2=reshape(nrz21N);
%%%%%%%%%%%%%%%%%%%%%%生成擴頻要用的M序列
mx1=zeros(116384);
for?i=1:64:16384
????mx1(i:i+4)=m1(1);
????mx1(i+5:i+8)=m1(2);
????mx1(i+9:i+12)=m1(3);
????mx1(i+13:i+16)=m1(4);
????mx1(i+17:i+20)=m1(5);
????mx1(i+21:i+24)=m1(6);
????mx1(i+25:i+28)=m1(7);
????mx1(i+29:i+32)=m1(8);
????mx1(i+33:i+36)=m1(9);
????mx1(i+37:i+40)=m1(10);
????mx1(i+41:i+44)=m1(11);
????mx1(i+45:i+48)=m1(12);
????mx1(i+49:i+52)=m1(13);
????mx1(i+53:i+56)=m1(14);
????mx1(i+
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????243712??2009-10-29?18:41??CDMA.doc
?????文件????????212??1998-02-26?16:11??T2F.M
?????文件???????7397??2009-05-13?22:55??USER2_CDMA.m
?????文件????????241??1998-01-14?16:43??F2T.M
-----------?---------??----------?-----??----
???????????????251562????????????????????4
- 上一篇:NSGA2多目標遺傳算法matlab代碼
- 下一篇:暗通道去霧matlab
評論
共有 條評論