mpsk_gen.m
来自「高斯加性白噪声下采用MPSK调制的系统BER性能分析」· M 代码 · 共 41 行
M
41 行
function [x]=mpsk_gen(M,fl,t,d)
% [x]=mpsk_gen(M,fl,t,d);
% example:
% [x]=mpsk_gen(4,1000,1,1);
% 'M'--mpsk modulation type 2/4/8/16
% 'fl'-- signal rate
% 't'-- time last
% 'd'-- amplititude of symbols
error(nargchk(1,4,nargin));
if M<=0
error('Wrong parameter, the value of M must be greater than 0')
end
if M>8
error('Wrong parameter, the value of M must be less than 8')
end
if mod(M,2)~=0
error('Wrong parameter, the value of M must be 2,4,16,32,64')
end
if nargin==1
N=1000;d=1;
elseif nargin==3
d=1;
end
N=fix(fl*t);
p=0;
%generation of the data source follows
for i=1:N
temp=rand; % a uniform R.V. between 0 and 1
dsource(i)=1+floor(M*temp); % a number between 1 and M, uniform
end;
% mapping to the signal constellation follow
map=[0:M-1].*2*pi/M;
for i=1:N
psk_sig(i)=map(dsource(i));
x1(i)=d.*cos(psk_sig(i)+p);
x2(i)=d.*sin(psk_sig(i)+p);
% x1(i)=d.*cos(psk_sig(i));
% x2(i)=d.*sin(psk_sig(i));
end;
x=x1-j*x2;
return
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?