msequence.m

来自「mSequence_generatorM序列发生器.rar是基于MATLAB编器」· M 代码 · 共 40 行

M
40
字号
function Sequence=MSequence(SF);
SFlog2=log2(SF);
if rem(SFlog2,1)~=0, error('SF must be an integer power of 2');end
switch SFlog2
    case 3
        R=3; instate=zeros(1,3); instate(R)=1;
        N=2^R-1; generator=[0 1 3];
    case 4
        R=4; instate=zeros(1,4); instate(R)=1;
        N=2^R-1; generator=[0 1 4];
    case 5
        R=5; instate=zeros(1,5); instate(R)=1;
        N=2^R-1; generator=[0 2 5];
    case 6
        R=6; instate=zeros(1,6); instate(R)=1;
        N=2^R-1; generator=[0 1 6];
    case 7
        R=7; instate=zeros(1,7); instate(R)=1;
        N=2^R-1; generator=[0 3 7];
    case 8
        R=8; instate=zeros(1,8); instate(R)=1;
        N=2^R-1; generator=[0 2 3 4 8];
    case 9
        R=9; instate=zeros(1,9); instate(R)=1;
        N=2^R-1; generator=[0 4 9];
    case 10
        R=10; instate=zeros(1,10); instate(R)=1;
        N=2^R-1; generator=[0 3 10];
    case 11
        R=11; instate=zeros(1,11); instate(R)=1;
        N=2^R-1; generator=[0 2 11];
    case 12
        R=12; instate=zeros(1,12); instate(R)=1;
        N=2^R-1; generator=[0 1 4 6 12];
    otherwise
        error('SF 8~12');
 end
 [Sequence, Outstate]=LinearFeedbackShiftRegister(R,generator,instate,N);
 Sequence=1-2*Sequence;
 

⌨️ 快捷键说明

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