constel.m

来自「16QAM的MATLAB调制解调仿真」· M 代码 · 共 29 行

M
29
字号
function c=constel (x, fs, fb, fc);
%
% usage: ph=phdet (x, fs, fc);  BBI2000
if nargin<4;fc=2;  end;
if nargin<3;fb=1;  end;
if nargin<2;fs=32; end;
if nargin<1;
   t=(0: 255)/fs; x=cos(2*pi*fc*t+.25*pi);
end;
N=length (x);   m=2*fs/fb;  n=fs/fc;
i1=m-n; i=1; ph0= (i1-1) *2*pi/n;
while i<=N/m;
     xi=x (i1: i1+n-1);  y=2*fft (xi)/n; c( i)=y (2);
     i=i+1;  i1=i1+m;
end;
 %------------------------------
if nargout<1;
   cmax=max (abs (c));
   ph= (0: 5: 360)* pi/180;plot (1.414*cos (ph),1.414*sin (ph),' c');
   hold on;
   for i=1: length (c);
       ph=angle (c (i)) -ph0+pi;              %+pi/2;
       a=abs (c (i))/cmax*1.414;
       plot (a*cos (ph),a*sin (ph), ' r*');
   end;
   plot ( [ -1.5 1.5], [0 0], ' k:',[0 0 ],[ -1.5 1.5], ' k:');
   hold off;  axis equal;   axis ( [-1.5 1.5 -1.5 1.5]);
end;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?