User manual
31
1 2 3 4 5 6 7 8 9 A B C D E
A 10 2 s 10 10 A = AD2
A = Not
A
A A A Din.2 = 0 A
B 11 5 s 11 11 B B B Din.3 = 0 B
C 12 10 s 12 12 C C C S1 = 0 C
D 13 20 s 13 13 D D D S2 = 0 D
E 14 30 s 14 14 E E E S1 = 1 E
F 15 60 s 15 15 F F F S2 = 1 F
14 Zählschleifen
Ein Vorgang soll z. B. genau fünfmal ausgeführt werden. Dazu bildet man eine Zählschleife. Ein Sprungbefehl
wird in diesem Fall fünfmal ausgeführt, danach nicht mehr. Die Zählvariable heißt C. Der Zählerwert 5 muss
zuerst in A geladen werden und von da in C. Der Befehl A2 führt einen absoluten Sprung auf 02 aus und
verkleinert zugleich den Inhalt der Variablen C um 1. Wenn C den Wert 0 erreicht hat, wird der Sprung nicht
mehr ausgeführt. Die absolute Sprungadresse bezieht sich auf die angegebene Seite. Bei einem Programm auf
der Seite 0 darf der Seitenbefehl 80 auch weggelassen werden. Er ist aber unbedingt nötig, wenn eine andere
Seite angesprungen wird.
Adresse Befehl Daten Kommentar
00 4 5 A = 5
01 5 2 C = A
02 1 5 Port = 0101
03 2 8 500 ms
04 1 A Port = 1010
05 2 8 500 ms
06 8 0 Seite 0
07 A 2 C-mal 02
08 3 0 Ende
45 52 15 28 1A 28 80 A2 30
Listing 17: Eine Zählschleife
Testen Sie das Programm. Die LEDs zeigen bei jedem Durchgang die Muster 0101 und 1010. Allerdings wird
dieser Programmteil offensichtlich nicht fünfmal, sondern genau sechsmal durchlaufen. Zwar wird der
Sprungbefehl in Adresse 07 tatsächlich genau fünfmal ausgeführt, um aber zum ersten Mal an diese Stellen
zu gelangen, wird schon ein Blinkvorgang durchgeführt. Deshalb blinkt das Programm insgesamt sechsmal.
Ändern Sie die Zählvariable auf den Wert 4 und testen Sie das Programm erneut. Nun blinken die LEDs
genau fünfmal.