Omron C200HE User Manual

Page of 564
261
Example
In the following example, the content of IR 040 is set to #0000 and then increm-
ented by 1 each cycle. For the first two cycles, AVG(––) moves the content of
IR 040 to DM 1002 and DM 1003. The contents of DM 1001 will also change
(which can be used to confirm that the results of AVG(––) has changed). On the
third and later cycles AVG(––) calculates the average value of the contents of
DM 1002 to DM 1004 and writes that average value to DM 1000.
@MOV(21)
040
#0000
00001
Address
Instruction
Operands
00000
LD
00001
00001
@MOV(21)
#
0000
040
00002
AVG(––)
040
#
0003
DM
1000
00003
CLC(41)
00004
ADB(50)
040
#
0001
040
AVG(––)
#0003
040
DM 1000
CLC(41)
ADB(50)
#0001
040
040
1
st
 cycle
2
nd
 cycle
3
rd
 cycle
4
th
 cycle
DM 1000
0000
0001
0001
0002
Average
DM 1001
0001
0002
8000
8001
Pointer
DM 1002
0000
0000
0000
0003
DM 1003
---
0001
0001
0001
3 previous values of IR 40
DM 1004
---
---
0002
0002
1
st
 cycle
2
nd
 cycle
3
rd
 cycle
4
th
 cycle
IR 40
0000
0001
0002
0003
5-21-4
SUM – SUM(––)
C: Control data
IR, SR, AR, DM, HR, LR, #
R
1
: First word in range
IR, SR, AR, DM, HR, TC, LR
Ladder Symbols
Operand Data Areas
D: First destination word
IR, SR, AR, DM, HR, LR
SUM(––)
C
R
1
D
@SUM(––)
C
R
1
D
Limitations
The 3 rightmost digits of C must be BCD between 001 and 999.
If bit 14 of C is OFF (setting for BCD data), all data within the range R
1
 to R
1
+N–1
must be BCD.
Special Math Instructions
Section 5-21