📄 tstcycsq.m
字号:
set_param([sys,'/','Counter/in_2'],...
'Port','2',...
'position',[15,155,35,175])
add_block('built-in/Inport',[sys,'/','Counter/in_1'])
set_param([sys,'/','Counter/in_1'],...
'position',[15,50,35,70])
add_block('built-in/Switch',[sys,'/','Counter/Switch2'])
set_param([sys,'/','Counter/Switch2'],...
'ForeGround',3,...
'Threshold','eps',...
'position',[345,149,370,181])
add_block('built-in/Sum',[sys,'/','Counter/Sum'])
set_param([sys,'/','Counter/Sum'],...
'ForeGround',3,...
'position',[295,100,315,120])
add_block('built-in/Relational Operator',[sys,'/',['Counter/Relational',13,'Operator1']])
set_param([sys,'/',['Counter/Relational',13,'Operator1']],...
'ForeGround',2,...
'Operator','>',...
'position',[225,53,255,77])
add_block('built-in/Constant',[sys,'/','Counter/Constant'])
set_param([sys,'/','Counter/Constant'],...
'ForeGround',3,...
'Value','thld',...
'position',[105,100,135,120])
add_line([sys,'/','Counter'],[500,155;545,155])
add_line([sys,'/','Counter'],[520,155;520,220;445,220])
add_line([sys,'/','Counter'],[375,165;465,165])
add_line([sys,'/','Counter'],[340,70;370,70])
add_line([sys,'/','Counter'],[40,165;75,165])
add_line([sys,'/','Counter'],[40,60;220,60])
add_line([sys,'/','Counter'],[320,110;330,110;340,155])
add_line([sys,'/','Counter'],[140,110;190,110;190,70;220,70])
add_line([sys,'/','Counter'],[260,65;275,65;275,105;290,105])
add_line([sys,'/','Counter'],[145,165;340,165])
add_line([sys,'/','Counter'],[395,220;275,220;275,175;340,175])
add_line([sys,'/','Counter'],[275,175;275,115;290,115])
add_line([sys,'/','Counter'],[440,70;450,70;450,155;465,155])
set_param([sys,'/','Counter'],...
'Mask Display','plot(0,0,100,100,x,y,v,w);Counter',...
'Mask Type','Resettable number counter')
set_param([sys,'/','Counter'],...
'Mask Dialogue','If the 1st inport value is larger than the threshold, the counter increases one at the rising edge of the 2nd inport pulse.|Threshold:')
set_param([sys,'/','Counter'],...
'Mask Translate','thld=@1;[v,w]=trigicon(0,50,get_param(gcb,''orientation''),2);[x,y]=trigicon(0,20,get_param(gcb,''orientation''),2);')
set_param([sys,'/','Counter'],...
'Mask Help','If the signal at the 1st inport is larger than or equal to the given threshold at the rising edge of the 2nd inport, the counter increases by one. The rising edge of the 3rd port resets the counter to zero.')
set_param([sys,'/','Counter'],...
'Mask Entries','.2\/')
% Finished composite block 'Counter'.
set_param([sys,'/','Counter'],...
'hide name',0,...
'position',[385,98,465,142])
% Subsystem ['Binary sequence',13,'cyclic decode'].
new_system([sys,'/',['Binary sequence',13,'cyclic decode']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode']],'Location',[197,104,780,264])
% Subsystem ['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode'].
new_system([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],'Location',[267,160,850,320])
add_block('built-in/Inport',[sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/in_1']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/in_1']],...
'position',[30,35,50,55])
add_block('built-in/State-Space',[sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain']],...
'A','[]',...
'B','[]',...
'C','[]',...
'D','K',...
'Mask Display','K',...
'Mask Type','Matrix Gain')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain']],...
'Mask Dialogue','Matrix Gain.|Gain matrix:',...
'Mask Translate','K = @1;')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain']],...
'Mask Help','Multiplies input vector by entered matrix to produce output vector (y=Au).',...
'Mask Entries','H\/')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain']],...
'position',[100,31,125,59])
add_block('built-in/S-Function',[sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation']],...
'function name','arymodu',...
'parameters','md',...
'Mask Display','Modulo',...
'Mask Type','Modulo')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation']],...
'Mask Dialogue','Modulus operation:|Modulus base:',...
'Mask Translate','md = @1;')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation']],...
'Mask Help','This block output modulus operation of the input signal with module base as specified in block entry. The length of the output vector is the same as the input vector.')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation']],...
'Mask Entries','2\/',...
'position',[140,26,200,64])
add_block('built-in/Combinatorial Logic',[sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Combinatorial',13,'Logic']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Combinatorial',13,'Logic']],...
'Truth Table','trt',...
'position',[225,33,255,57])
add_block('built-in/Sum',[sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Sum']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Sum']],...
'position',[305,90,325,110])
add_block('built-in/S-Function',[sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation1']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation1']],...
'function name','arymodu',...
'parameters','md',...
'Mask Display','Modulo',...
'Mask Type','Modulo')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation1']],...
'Mask Dialogue','Modulus operation:|Modulus base:',...
'Mask Translate','md = @1;')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation1']],...
'Mask Help','This block output modulus operation of the input signal with module base as specified in block entry. The length of the output vector is the same as the input vector.')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation1']],...
'Mask Entries','2\/',...
'position',[340,81,400,119])
add_block('built-in/State-Space',[sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain1']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain1']],...
'A','[]',...
'B','[]',...
'C','[]',...
'D','K',...
'Mask Display','K',...
'Mask Type','Matrix Gain')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain1']],...
'Mask Dialogue','Matrix Gain.|Gain matrix:',...
'Mask Translate','K = @1;')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain1']],...
'Mask Help','Multiplies input vector by entered matrix to produce output vector (y=Au).',...
'Mask Entries','G\/')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Matrix',13,'Gain1']],...
'position',[415,86,440,114])
add_block('built-in/S-Function',[sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation2']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation2']],...
'function name','arymodu',...
'parameters','md',...
'Mask Display','Modulo',...
'Mask Type','Modulo')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation2']],...
'Mask Dialogue','Modulus operation:|Modulus base:',...
'Mask Translate','md = @1;')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation2']],...
'Mask Help','This block output modulus operation of the input signal with module base as specified in block entry. The length of the output vector is the same as the input vector.')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/Modulus',13,'operation2']],...
'Mask Entries','2\/',...
'position',[455,81,515,119])
add_block('built-in/Outport',[sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/out_1']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode/out_1']],...
'position',[535,90,555,110])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],[130,45;135,45])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],[205,45;220,45])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],[260,45;285,45;285,95;300,95])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],[55,45;95,45])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],[80,45;80,105;300,105])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],[330,100;335,100])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],[405,100;410,100])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],[445,100;450,100])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],[520,100;530,100])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],...
'Mask Display','plot(0,0,100,100,x,y);Cyclic de',...
'Mask Type','Vector I/O cyclic decode')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],...
'Mask Dialogue','Cyclic decode with codeword length N,\nmessage length K.|Codeword length N:|Message length K, or generator polynomial Pg:')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],...
'Mask Translate','n=@1;p=@2;if length(p)==1, p=cyclpoly(n,p,''min'');end;if isempty(p),error(''No such cyclic code exist'');end;[H,G]=cyclgen(n,p);trt=htruthtb(G);[n,m]=size(G);G=[zeros(n,m-n),eye(n)];[x,y]=codeicon(2);')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],...
'Mask Help','This block decodes length N binary vector codeword input into length K binary vector message output using cyclic code. When Pg is specified instead of K, the block uses the user-defined cyclic polynomial Pg. Use function CYCLPOLY for the choice of cyclic generator polynomials.')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],...
'Mask Entries','n\/p\/')
% Finished composite block ['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode'].
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Binary vector',13,'cyclic decode']],...
'position',[285,13,365,57])
add_block('built-in/Demux',[sys,'/',['Binary sequence',13,'cyclic decode/Demux']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Demux']],...
'outputs','2',...
'position',[120,80,160,115])
% Subsystem ['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time'].
new_system([sys,'/',['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time']],'Location',[55,192,283,286])
add_block('built-in/S-Function',[sys,'/',['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time/S-function1']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time/S-function1']],...
'function name','homopuls',...
'parameters','samp_time, out_divid, offset',...
'position',[40,31,105,59])
add_block('built-in/Outport',[sys,'/',['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time/Outport']])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time/Outport']],...
'position',[160,35,180,55])
add_line([sys,'/',['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time']],[110,45;155,45])
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time']],...
'Mask Display','Vector\nPulse',...
'Mask Type','Pulse generator')
set_param([sys,'/',['Binary sequence',13,'cyclic decode/Pulses deivide',13,'same sample time']],...
'Mask Dialogue','Vector pulses with sample rate of each pulse as Sample_time ./Divider. |Sample time (scalar, sec):|Divider (integer vector):|Offset (have same dimension as Divider):')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -