?? tcmcode.m
字號:
snr=10;
N=input('number'); %數(shù)據(jù)長度
Es=3;
g=[1 0 1;0 0 1]; %卷積碼編碼器兩路的沖激響應(yīng)
x=round(rand(1,N)); %產(chǎn)生信源
for i=1:N/2; %串并變換
x1(i)=x(2*i-1);
x2(i)=x(2*i);
end;
z=cnvc(g,x1,x2); %進行(3,2,3)卷積碼編碼,z為三行的向量
len=size(z,2);
zt=z.';
for i=1:len %進行8PSK映射,得到信號點在星座圖上的位置
f(i)=bin2deci(zt(i,:));
if ((f(i)>=3)&(f(i)<7)) %在星座圖上處于0.75pi,pi,1.25pi和1.5pi的點
R(i)=awgn(sqrt(Es)*cos(2*pi*f(i)/8),snr,'measured');
H(i)=awgn(sqrt(Es)*sin(2*pi*f(i)/8),snr,'measured');
T(i)=pi+atan(H(i)/R(i));
elseif f(i)<3 %在星座圖上處于0,0.25pi,0.5pi的點
R(i)=awgn(sqrt(Es)*cos(2*pi*f(i)/8),snr,'measured');
H(i)=awgn(sqrt(Es)*sin(2*pi*f(i)/8),snr,'measured');
T(i)=atan(H(i)/R(i));
else %在星座圖上處于1.75pi的點
R(i)=awgn(sqrt(Es)*cos(2*pi*f(i)/8),snr,'measured');
H(i)=awgn(sqrt(Es)*sin(2*pi*f(i)/8),snr,'measured');
T(i)=2*pi+atan(H(i)/R(i));
end;
end;
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -