100BBasic instructions
7.6 Move
S7-1200 Programmable controller
196
System Manual, 11/2011, A5E02486680-05
Note
Rules for data copy operations
To copy the Bool data type, use SET_BF, RESET_BF, R, S, or output coil (LAD)
(Page 166)
To copy a single elementary data type, use MOVE
To copy an array of an elementary data type, use MOVE_BLK or UMOVE_BLK
To copy a structure, use MOVE
To copy a string, use S_MOVE (Page 240)
To copy a single character in a string, use MOVE
The MOVE_BLK and UMOVE_BLK instructions cannot be used to copy arrays or
structures to the I, Q, or M memory areas.
MOVE_BLK and UMOVE_BLK instructions differ in how interrupts are handled:
●
Interrupt events are queued and processed during MOVE_BLK execution. Use the
MOVE_BLK instruction when the data at the move destination address is not used within
an interrupt OB subprogram or, if used, the destination data does not have to be
consistent. If a MOVE_BLK operation is interrupted, then the last data element moved is
complete and consistent at the destination address. The MOVE_BLK operation is
resumed after the interrupt OB execution is complete.
●
Interrupt events are queued but not processed until UMOVE_BLK execution is complete.
Use the UMOVE_BLK instruction when the move operation must be completed and the
destination data consistent, before the execution of an interrupt OB subprogram. For
more information, see the section on data consistency (Page 143).
ENO is always true following execution of the MOVE instruction.
Table 7- 65 ENO status
ENO
Condition
Result
1
No error
All COUNT elements were
successfully copied.
0
Either the source (IN) range or the destination
(OUT) range exceeds the available memory
area.
Elements that fit are copied. No partial
elements are copied.