Diese Operation wird verwendet, um z.B. in Schleifen die Adressregister Adressregister 1 oder 2 zu erhöhen. In den Akku 1 muss vorher die Schrittweite geladen werden, oder im Pointerformat als Operand angegeben werden.
Diese Werte müssen im Akku 1 stehen , um die gewünschte Schrittweite zu erhalten
Schrittweite |
Pointerformat |
Hex-Format |
Beispiel |
|
1 Bit |
P#0.1 |
0001h |
A 5.7 -> A 5.8 |
|
1 Byte |
P#1.0 |
0008h |
E 7.3 -> E 8.3 |
|
1 Word |
P#2.0 |
0010h |
MW 6 -> MW 8 |
|
1 Dword |
P#4.0 |
0020h |
DBD10 -> DBD 14 |
!! Warnung bei Verwendung der Adressregister !!
Beispiel einer Schleife mit AR1
LAR1 P#A6.0 |
// Lade das Adressregister mit Pointer auf A6.0 |
|
L 4 |
// 4 Schleifendurchläufe |
|
lbl : |
T #Idx |
// #Idx ist lokale INT-Variable |
SET |
// VKE auf “1” setzen |
|
= [AR1,P#0.1] |
// Ziel ist AR1 + P#0.1 |
|
+AR1 P#1.2 |
// Schrittweite ist 1 Byte, 2 bits |
|
L Idx |
||
LOOP lbl |
Dies hat die gleiche Wirkung wie:
SET
= A 6.1
= A 7.3
= A 8.5
= A 8.7
Siehe auch:
S7-300 und S7-400 sind eingetragene Warenzeichen der Siemens AG.