📄 s2.m
字号:
'position',[455,323,480,347])
% Subsystem 'Latch1'.
new_system([sys,'/','Latch1'])
set_param([sys,'/','Latch1'],'Location',[102,336,551,502])
add_block('built-in/Fcn',[sys,'/','Latch1/Fcn'])
set_param([sys,'/','Latch1/Fcn'],...
'orientation',2,...
'Expr','u[1]>.2',...
'position',[170,123,205,147])
add_block('built-in/Demux',[sys,'/','Latch1/Demux'])
set_param([sys,'/','Latch1/Demux'],...
'outputs','2',...
'position',[275,55,315,90])
add_block('built-in/Combinatorial Logic',[sys,'/','Latch1/Logic'])
set_param([sys,'/','Latch1/Logic'],...
'Truth Table','[0 1;1 0;0 1;0 1;1 0;1 0;0 0;0 0]',...
'position',[195,55,250,95])
add_block('built-in/Transport Delay',[sys,'/','Latch1/Transport Delay'])
set_param([sys,'/','Latch1/Transport Delay'],...
'orientation',2,...
'Initial Input','ini',...
'position',[250,120,295,150])
add_block('built-in/Outport',[sys,'/','Latch1/out_2'])
set_param([sys,'/','Latch1/out_2'],...
'Port','2',...
'position',[395,70,415,90])
add_block('built-in/Outport',[sys,'/','Latch1/out_1'])
set_param([sys,'/','Latch1/out_1'],...
'position',[355,55,375,75])
add_block('built-in/Mux',[sys,'/','Latch1/Mux'])
set_param([sys,'/','Latch1/Mux'],...
'inputs','3',...
'position',[135,59,165,91])
add_block('built-in/Inport',[sys,'/','Latch1/in_1'])
set_param([sys,'/','Latch1/in_1'],...
'position',[20,50,40,70])
add_block('built-in/Inport',[sys,'/','Latch1/in_2'])
set_param([sys,'/','Latch1/in_2'],...
'Port','2',...
'position',[50,65,70,85])
add_line([sys,'/','Latch1'],[320,65;350,65])
add_line([sys,'/','Latch1'],[335,65;335,135;300,135])
add_line([sys,'/','Latch1'],[165,135;110,135;110,85;130,85])
add_line([sys,'/','Latch1'],[245,135;210,135])
add_line([sys,'/','Latch1'],[75,75;130,75])
add_line([sys,'/','Latch1'],[45,60;105,60;105,65;130,65])
add_line([sys,'/','Latch1'],[170,75;190,75])
add_line([sys,'/','Latch1'],[255,75;270,75])
add_line([sys,'/','Latch1'],[320,80;390,80])
set_param([sys,'/','Latch1'],...
'Mask Display','S 1\n\nR 0',...
'Mask Type','Latch',...
'Mask Dialogue','Latch|Initial State for Output "1":',...
'Mask Translate','ini=(@1~=0);')
set_param([sys,'/','Latch1'],...
'Mask Help','Latches the S input. When S (set) is one, the uncomplemented output (1) becomes one. The output remains one until the R (reset) input becomes one, forcing the output to zero. If both R and S are one, the latch will be in an undefined state.')
set_param([sys,'/','Latch1'],...
'Mask Entries','0\/')
% Finished composite block 'Latch1'.
set_param([sys,'/','Latch1'],...
'position',[560,313,590,357])
add_block('built-in/Logical Operator',[sys,'/','a'])
set_param([sys,'/','a'],...
'Operator','AND',...
'position',[510,305,540,345])
% Subsystem 'Latch2'.
new_system([sys,'/','Latch2'])
set_param([sys,'/','Latch2'],'Location',[102,336,551,502])
add_block('built-in/Fcn',[sys,'/','Latch2/Fcn'])
set_param([sys,'/','Latch2/Fcn'],...
'orientation',2,...
'Expr','u[1]>.2',...
'position',[170,123,205,147])
add_block('built-in/Demux',[sys,'/','Latch2/Demux'])
set_param([sys,'/','Latch2/Demux'],...
'outputs','2',...
'position',[275,55,315,90])
add_block('built-in/Combinatorial Logic',[sys,'/','Latch2/Logic'])
set_param([sys,'/','Latch2/Logic'],...
'Truth Table','[0 1;1 0;0 1;0 1;1 0;1 0;0 0;0 0]',...
'position',[195,55,250,95])
add_block('built-in/Transport Delay',[sys,'/','Latch2/Transport Delay'])
set_param([sys,'/','Latch2/Transport Delay'],...
'orientation',2,...
'Initial Input','ini',...
'position',[250,120,295,150])
add_block('built-in/Outport',[sys,'/','Latch2/out_2'])
set_param([sys,'/','Latch2/out_2'],...
'Port','2',...
'position',[395,70,415,90])
add_block('built-in/Outport',[sys,'/','Latch2/out_1'])
set_param([sys,'/','Latch2/out_1'],...
'position',[355,55,375,75])
add_block('built-in/Mux',[sys,'/','Latch2/Mux'])
set_param([sys,'/','Latch2/Mux'],...
'inputs','3',...
'position',[135,59,165,91])
add_block('built-in/Inport',[sys,'/','Latch2/in_1'])
set_param([sys,'/','Latch2/in_1'],...
'position',[20,50,40,70])
add_block('built-in/Inport',[sys,'/','Latch2/in_2'])
set_param([sys,'/','Latch2/in_2'],...
'Port','2',...
'position',[50,65,70,85])
add_line([sys,'/','Latch2'],[320,65;350,65])
add_line([sys,'/','Latch2'],[335,65;335,135;300,135])
add_line([sys,'/','Latch2'],[165,135;110,135;110,85;130,85])
add_line([sys,'/','Latch2'],[245,135;210,135])
add_line([sys,'/','Latch2'],[75,75;130,75])
add_line([sys,'/','Latch2'],[45,60;105,60;105,65;130,65])
add_line([sys,'/','Latch2'],[170,75;190,75])
add_line([sys,'/','Latch2'],[255,75;270,75])
add_line([sys,'/','Latch2'],[320,80;390,80])
set_param([sys,'/','Latch2'],...
'Mask Display','S 1\n\nR 0',...
'Mask Type','Latch',...
'Mask Dialogue','Latch|Initial State for Output "1":',...
'Mask Translate','ini=(@1~=0);')
set_param([sys,'/','Latch2'],...
'Mask Help','Latches the S input. When S (set) is one, the uncomplemented output (1) becomes one. The output remains one until the R (reset) input becomes one, forcing the output to zero. If both R and S are one, the latch will be in an undefined state.')
set_param([sys,'/','Latch2'],...
'Mask Entries','0\/')
% Finished composite block 'Latch2'.
set_param([sys,'/','Latch2'],...
'orientation',2,...
'position',[395,439,425,486])
add_block('built-in/Integrator',[sys,'/','Integrator2'])
set_param([sys,'/','Integrator2'],...
'position',[565,169,595,201])
add_block('built-in/Sum',[sys,'/','Sum2'])
set_param([sys,'/','Sum2'],...
'inputs','-++',...
'position',[455,147,470,223])
add_block('built-in/Constant',[sys,'/','Iamin'])
set_param([sys,'/','Iamin'],...
'Value','60',...
'position',[350,266,380,284])
add_block('built-in/Relational Operator',[sys,'/','<0'])
set_param([sys,'/','<0'],...
'Operator','<',...
'position',[300,242,320,258])
add_block('built-in/Memory',[sys,'/','Memory'])
set_param([sys,'/','Memory'],...
'position',[255,242,275,258])
add_block('built-in/Sum',[sys,'/','Sum'])
set_param([sys,'/','Sum'],...
'inputs','-+----',...
'position',[135,162,155,253])
add_block('built-in/Gain',[sys,'/','r3'])
set_param([sys,'/','r3'],...
'orientation',2,...
'Gain','0.313',...
'position',[250,451,310,489])
add_block('built-in/Switch',[sys,'/','C3'])
set_param([sys,'/','C3'],...
'orientation',2,...
'Threshold','0.5',...
'position',[195,418,220,482])
add_block('built-in/Switch',[sys,'/','C2'])
set_param([sys,'/','C2'],...
'orientation',2,...
'Threshold','0.5',...
'position',[155,354,180,416])
add_block('built-in/Gain',[sys,'/','r1'])
set_param([sys,'/','r1'],...
'orientation',2,...
'Gain','0.872',...
'position',[210,327,270,363])
add_block('built-in/Switch',[sys,'/','C1'])
set_param([sys,'/','C1'],...
'orientation',2,...
'Threshold','0.5',...
'position',[115,295,140,355])
add_block('built-in/Note',[sys,'/','Ia'])
set_param([sys,'/','Ia'],...
'position',[310,190,315,195])
add_block('built-in/Gain',[sys,'/','Ra'])
set_param([sys,'/','Ra'],...
'orientation',2,...
'Gain','Ra',...
'position',[155,258,190,292])
% Subsystem 'm2'.
new_system([sys,'/','m2'])
set_param([sys,'/','m2'],'Location',[110,5374099,224,5374175])
add_block('built-in/Note',[sys,'/',['m2/Masked block of m2.m in Chapter 8',13,'to initialize s2.m and plot results']])
set_param([sys,'/',['m2/Masked block of m2.m in Chapter 8',13,'to initialize s2.m and plot results']],...
'position',[60,45,65,50])
set_param([sys,'/','m2'],...
'Mask Display','Initialize\nand plot',...
'Mask Type','Masked block of m2.m',...
'Mask Dialogue','eval(''m2'')',...
'Mask Help','Uses m2.m to initialize and plot')
% Finished composite block 'm2'.
set_param([sys,'/','m2'],...
'Drop Shadow',4,...
'position',[82,30,150,68])
add_line(sys,[160,210;175,210])
add_line(sys,[475,185;490,185])
add_line(sys,[545,185;560,185])
add_line(sys,[600,185;620,185;620,110;200,110])
add_line(sys,[305,210;350,210])
add_line(sys,[280,160;305,160;305,125;200,125])
add_line(sys,[280,160;305,160;305,190;350,190])
add_line(sys,[165,120;105,120;105,170;130,170])
add_line(sys,[500,140;422,140;422,160;450,160])
add_line(sys,[620,110;620,140;565,140])
add_line(sys,[230,210;260,210])
add_line(sys,[75,170;95,170;95,185;130,185])
add_line(sys,[305,210;340,210;340,275;195,275])
add_line(sys,[150,275;120,275;130,245])
add_line(sys,[385,200;415,200;415,185;450,185])
add_line(sys,[435,220;435,210;450,210])
add_line(sys,[380,35;380,30;535,30])
add_line(sys,[380,35;380,30;515,30;515,70;560,70])
add_line(sys,[265,75;305,65])
add_line(sys,[165,120;155,120;155,85;355,85;355,65])
add_line(sys,[325,210;325,95;405,95;405,65])
add_line(sys,[340,259;340,260;405,260])
add_line(sys,[340,260;340,470;315,470])
add_line(sys,[190,450;90,450;90,200;130,200])
add_line(sys,[150,385;95,385;95,215;130,215])
add_line(sys,[110,325;100,325;100,230;130,230])
add_line(sys,[385,275;405,275])
add_line(sys,[205,345;145,345])
add_line(sys,[225,405;185,405])
add_line(sys,[245,470;225,470])
add_line(sys,[230,210;240,210;250,250])
add_line(sys,[280,250;280,250;280,245;295,245])
add_line(sys,[325,250;450,250])
add_line(sys,[440,270;450,270])
add_line(sys,[485,260;505,260])
add_line(sys,[555,260;565,260;565,300;365,300;365,335;380,335])
add_line(sys,[545,325;555,325])
add_line(sys,[420,335;430,335;430,310;155,310;145,325])
add_line(sys,[420,335;450,335])
add_line(sys,[485,335;505,335])
add_line(sys,[595,325;615,325;615,410])
add_line(sys,[460,450;430,450])
add_line(sys,[390,450;225,450])
add_line(sys,[340,345;275,345])
add_line(sys,[340,410;340,405;295,405])
add_line(sys,[615,440;505,440])
add_line(sys,[555,260;635,260;635,455;505,455])
add_line(sys,[615,390;615,385;185,385])
add_line(sys,[485,300;485,315;505,315])
add_line(sys,[600,185;620,185;620,110;455,110;455,65])
drawnow
% Return any arguments.
if (nargin | nargout)
% Must use feval here to access system in memory
if (nargin > 3)
if (flag == 0)
eval(['[ret,x0,str,ts,xts]=',sys,'(t,x,u,flag);'])
else
eval(['ret =', sys,'(t,x,u,flag);'])
end
else
[ret,x0,str,ts,xts] = feval(sys);
end
else
drawnow % Flash up the model and execute load callback
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -