Omron CP1H CPU Operation Manual page 205

Cp1h cpu unit
Hide thumbs Also See for CP1H CPU:
Table of Contents

Advertisement

Index Registers
Variation
Indirect addressing
The content of IR@ is treated as
the PLC memory address of a bit
or word.
Indirect addressing
The constant prefix is added to the
with constant offset
content of IR@ and the result is
treated as the PLC memory
address of a bit or word.
The constant may be any integer
from –2,048 to 2,047.
Indirect addressing
The content of the Data Register
with DR offset
is added to the content of IR@ and
the result is treated as the PLC
memory address of a bit or word.
Indirect addressing
After referencing the content of
with auto-increment
IR@ as the PLC memory address
of a bit or word, the content is
incremented by 1 or 2.
Indirect addressing
The content of IR@ is decre-
with auto-decrement
mented by 1 or 2 and the result is
treated as the PLC memory
address of a bit or word.
Example
With the offset and increment/decrement variations, the Index Registers can
be set to base values with MOVR(560) or MOVRW(561) and then modified as
pointers in each instruction.
Set to a base value
with MOVR(560) or
MOVRW(561).
Note It is possible to specify regions outside of I/O memory and generate an Illegal
Access Error when indirectly addressing memory with Index Registers. Refer
to Appendix E Memory Map for details on the limits of PLC memory
addresses.
The following table shows the variations available when indirectly addressing
I/O memory with Index Registers. (IR@ represents an Index Register from IR0
to IR15.)
Function
This example shows how to store the PLC memory address of a word (CIO 2)
in an Index Register (IR0), use the Index Register in an instruction, and use
the auto-increment variation.
MOVR(560)
MOV(021)
MOV(021)
Pointer
Syntax
,IR@
LD ,IR0
Constant ,IR@
LD +5,IR0
(Include a + or –
in the constant.)
DR@,IR@
LD
DR0,IR0
Increment by 1:
LD , IR0++
,IR@+
Increment by 2:
,IR@++
Decrement by 1:
LD , – –IR0 Decrements the content of
,–IR@
Decrement by 2:
,– –IR@
2
IR0
Stores the PLC memory address of
CIO 2 in IR0.
#0001
,IR0
Writes #0001 to the PLC memory ad-
dress contained in IR0.
#0020
+1,IR0 Reads the content of IR0, adds 1,
and writes #0020 to that PLC memo-
ry address.
Section 4-15
I/O Memory
Example
Loads the bit at the PLC
memory address contained
in IR0.
Adds 5 to the contents of IR0
and loads the bit at that PLC
memory address.
Adds the contents of DR0 to
the contents of IR0 and
loads the bit at that PLC
memory address.
Loads the bit at the PLC
memory address contained
in IR0 and then increments
the content of IR0 by 2.
IR0 by 2 and then loads the
bit at that PLC memory
address.
171

Advertisement

Table of Contents
loading

Table of Contents