mseq.m

来自「根据M序列的产生原理」· M 代码 · 共 29 行

M
29
字号
function  mseq(k,num,len)
% k--模2加法门的输入(来自第k个寄存器的输出)
% num--寄存器的数目
% len--需要输出序列的长度
% 测试知有5个寄存器时,k=3时得到此时的m的序列;
% 测试知有6个寄存器时,k=5时得到此时的m的序列,测试发现要产生m序列,k的取值没有规律性
a=ones(1,num);  %寄存器初始化(全为1)
m=zeros(1,len);  %输出的m序列初始化
for i=1:len
    m(i)=a(num);       
    if(a(k)+a(num))==2|(a(k)+a(num))==0
           temp= 0;
      else
            temp=1;
     end
    for j=num:-1:1
        if j-1==0
            a(j)=temp;        
        else
        a(j)=a(j-1);
        end
    end
end
 m
 t=0:len-1;
 axis([0,len-1,0,2]),hold on
 stairs(t,m)
 
 

⌨️ 快捷键说明

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