📄 mseq.m
字号:
% Program 5-4
% mseq.m
%
% The generation function of m-sequence
%
% An example
% stg=3
% taps=[1,3]
% inidata=[1,1,1]
% n=2
%
% Programmed by yixiongshu,2006.8.9
function [mout]=mseq(stg,taps,inidata,n)
% stg : Number of stages
% taps: Position of register feedback
% inidata : Initial sequence
% n : Number of output sequence (it can be omitted)
% mout : output m-sequence
%
if nargin<4
n=1;
end
mout=zeros(n,2^stg-1);
fpos=zeros(stg,1);
fpos(taps)=1;
for ii=1:2^stg-1
mout(1,ii)=inidata(stg);
num=mod(inidata*fpos,2);
inidata(2:stg)=inidata(1:stg-1);
inidata(1)=num;
end
if n>1
for ii=2:n
mout(ii,:)=shift(mout(ii-1,:),1,0);
end
end
% end of file.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -