Omron SYSMAC CP Series User Manual page 70

Hide thumbs Also See for SYSMAC CP Series:
Table of Contents

Advertisement

4 Understanding Programming
4-6
Index Registers
4-6-1
What are Index Registers?
Index Registers function as pointers to specify PLC memory addresses, which are absolute memory
addresses in I/O memory. After storing a PLC memory address in an Index Register with MOVR or
MOVRW, input the Index Register as an operand in other instructions to indirectly address the stored
PLC memory address.
The advantage of Index Registers is that they can specify any bit or word in I/O memory, including timer
and counter PVs.
MOVR(560)
IR
Index Register
4-6-2
Using Index Registers
Index Registers can be a powerful tool when combined with loops such as FOR-NEXT loops. The con-
tents of Index Registers can be incremented, decremented, and offset very easily, so a few instructions
in a loop can process tables of consecutive data very efficiently.
Indirect
Instruction
addressing
,IR0
Basically, Index Registers are used with the following steps:
1
Use MOVR to store the PLC memory address of the desired bit or word in an Index Register.
2
Specify the Index Register as the operand in almost any instruction to indirectly address the
desired bit or word.
3
Offset or increment the original PLC memory address (see below) to redirect the pointer to
another address.
4
Continue steps 2 and 3 to execute the instruction on any number of addresses.
Note Use any of the following methods to offset or increment an Index Register.
• Indirect Addressing of Index Registers:
Indirect addressing with auto-incrementing (,IR@+ or ,IR@++), indirect addressing with
auto-decrementing (,−IR@ or ,−−IR@), indirect referencing with a constant offset (con-
stant,IR@), indirect addressing with a DR offset (DR@,IR@)
4-26
All areas of
Pointer
I/O Memory
Increment IR0 and repeat
instruction execution
IR0
Table data
CP2E CPU Unit Software User's Manual(W614)

Advertisement

Table of Contents
loading

Table of Contents