User manual

26
11 Rechnen mit Variablen
Bisher wurden in den Parametern der einzelnen Befehle nur konstante Zahlenwerte verwendet. Das ist
sinnvoll, wenn ein Programm immer gleich ablaufen soll. Komplexere Programme arbeiten dagegen mit
variablen Daten. Es kann z. B. eine Rechnung wie A = A + B ausgeführt werden. Abhängig vom Inhalt der
Variablen A und B wird dabei jedes Mal etwas anderes herauskommen. Das Ergebnis könnte z. B. die LEDs
an den Ausgängen steuern.
Die Steuerung besitzt die vier Variablen A, B, C und D. Die wichtigste Variable ist A. Sie wird auch als
Akkumulator
oder kurz
Akku
bezeichnet. A ist bei allen Rechenoperationen beteiligt und erhält das
Rechenergebnis. Außerdem wird A für den Datentransport eingesetzt. B wird hauptsächlich für Rechen-
operationen benötigt. C und D können als Zwischenspeicher dienen und werden später noch als Zähler für
Zählschleifen gebraucht.
Außerdem gibt es zwei analoge Eingänge (AD1 und AD2) und einen PWM-Ausgang. Die verarbeiteten Daten
sind auf vier Bit begrenzt und nur über die Variable A zugänglich (A = AD1, PWM = A). Der Akku A kann auch
direkt mit einer Zahl geladen werden (Befehle 40–4F). Um B, C oder D zu füllen, muss man zuerst A laden
und den Inhalt dann der anderen Variablen zuweisen (Befehle 51–53). Mit A und B können einige Rechen-
schritte (Befehle 71–7A) durchgeführt werden.
Die Befehle 40–4F weisen A einen neuen Wert zu. Die Befehlsgruppe 51–5A überträgt den Inhalt von A an ein
Ziel wie z. B. eine andere Variable oder den PWM-Ausgang. In dieser Gruppe gibt es auch Kommandos, die
ein einzelnes Bit des Ausgangs-Ports setzen.
Genau die andere Datenrichtung liegt mit der Befehlsgruppe 61–6A vor, wo Daten einer Quelle in A eingelesen
werden. Die Befehlsgruppe 71–7A schließlich führt einige Rechenoperationen durch, wobei das Ergebnis
grundsätzlich in A erscheint. Der Ausgangs-Port Dout umfasst die vier Ausgänge A1 bis A4, die entweder
gemeinsam oder als Einzel-Bits Dout.0 bis Dout.3 angesprochen werden können. Die Eingänge E1 bis E4
werden in gleicher Weise als Eingangs-Port Din angesprochen.
40–4F: A = 0–15
51–5A: Ziel 1–9 = A
51: B = A
52: C = A
53: D = A
54: Dout = A
55: Dout.0 = A.0
56: Dout.1 = A.0
57: Dout.2 = A.0
58: Dout.3 = A.0
59: PWM = A
61–6A: A = Quelle 1–10
61: A = B
62: A = C
63: A = D
64: A = Din