14: P
ROGRAM
B
RANCHING
I
NSTRUCTIONS
14-4
FT1A S
MART
A
XIS
U
SER
’
S
M
ANUAL
FT9Y-B1382
Correct Structure for Calling Subroutine
When a LCAL instruction is executed, the remaining program instructions on the same rung may not be executed upon return, if
input conditions are changed by the subroutine. After the LRET instruction of a subroutine, program execution begins with the
instruction following the LCAL instruction, depending on current input condition.
When instructions following a LCAL instruction must be executed after the subroutine is called, make sure the subroutine does not
change input conditions unfavorably. In addition, include subsequent instructions in a new ladder line, separated from the LCAL
instruction.
Example: LCAL and LRET
The following example demonstrates a program to call three different portions of program depending on the input. When the
subroutine is complete, program execution returns to the instruction following the LCAL instruction.
I0
LCAL
S1
0
REP
S1 –
D0
D1 –
D1
MOV(W)
REP
S1 –
D20
D1 –
D21
MOV(W)
Correct
I0
LCAL
S1
0
REP
S1 –
D0
D1 –
D1
MOV(W)
REP
S1 –
D20
D1 –
D21
MOV(W)
Incorrect
Separate the ladder line for each LCAL instruction.
I0 status may be changed by the subroutine upon return.
M0
S
M0
S
I0
When input I0 is on, program execution jumps to label 0.
When input I1 is on, program execution jumps to label 1.
When input I2 is on, program execution jumps to label 2.
M8121 is the 1-sec clock special internal relay.
When jump occurs to label 0, output Q0 oscillates in 1-sec increments.
Program execution returns to the address of input I1.
M8122 is the 100-ms clock special internal relay.
When jump occurs to label 1, output Q1 oscillates in 100-ms increments.
Program execution returns to the address of input I2.
M8123 is the 10-ms clock special internal relay.
When jump occurs to label 2, output Q2 oscillates in 10-ms increments.
Program execution returns to the address of END.
I0
LCAL
S1
0
END
I1
LCAL
S1
1
I2
LCAL
S1
2
M8121
LRET
M8122
LRET
M8123
LRET
Q0
Q1
Q2
LABEL
0
LABEL
1
LABEL
2
Содержание microsmart pentra
Страница 1: ...FT1A SERIES FC9Y B1382 Ladder Programming Manual ...
Страница 6: ...Preface 5 FT1A SMARTAXIS USER S MANUAL FT9Y B1382 ...
Страница 104: ...7 DATA COMPARISON INSTRUCTIONS 7 10 FT1A SMARTAXIS USER S MANUAL FT9Y B1382 ...
Страница 122: ...8 BINARY ARITHMETIC INSTRUCTIONS 8 18 FT1A SMARTAXIS USER S MANUAL FT9Y B1382 ...
Страница 138: ...10 SHIFT ROTATE INSTRUCTIONS 10 12 FT1A SMARTAXIS USER S MANUAL FT9Y B1382 ...
Страница 162: ...11 DATA CONVERSION INSTRUCTIONS 11 24 FT1A SMARTAXIS USER S MANUAL FT9Y B1382 ...
Страница 188: ...12 CALENDAR COMPARISON INSTRUCTIONS 12 26 FT1A SMARTAXIS USER S MANUAL FT9Y B1382 ...
Страница 198: ...15 REFRESH INSTRUCTIONS 15 4 FT1A SMARTAXIS USER S MANUAL FT9Y B1382 ...
Страница 202: ...16 INTERRUPT CONTROL INSTRUCTIONS 16 4 FT1A SMARTAXIS USER S MANUAL FT9Y B1382 ...
Страница 266: ...20 DUAL TEACHING TIMER INSTRUCTIONS 20 4 FC5A MICROSMART USER S MANUAL FC9Y B1273 ...
Страница 318: ...25 USER COMMUNICATION INSTRUCTIONS 25 22 FT1A SMARTAXIS USER S MANUAL FT9Y B1382 ...