User manual

ASURO - 65
-
9. C für ASURO
Will man Zeichen empfangen, ist für ASURO die Funktion SerRead () de niert. Der erste
Parameter enthält die Zeichenkettenvariable, in welcher empfangen Zeichen abgespeichert
werden, der
zweite Parameter gibt an, wieviele Zeichen empfangen werden sollen, der dritte stellt
ein Timeout dar. Werden innerhalb der eingestellten Zeit (Prozessortakte) keine Daten empfangen,
bricht die Funktion ab. Wird hier “0” eingestellt, wartete die Funktion bis alle Zeichen empfangen
wurden.
Auch hierzu ein kleines Beispiel:
ASURO soll “Hallo hier bin ich” über die IR-Schnittstelle empfangen:
char message [] = ”01234567890123456789”;
Platz für den zu empfangenden Text ist geschaffen worden. Die eben bereitgestellte Zeichenkette
muss groß genug sein, den zu empfangenden Text aufzunehmen.
SerRead(message,18,0);
Lies 18 Zeichen ein und warte dabei solange, bis alle 18 Zeichen eingetroffen sind. Wir gehen
jetzt mal davon aus, dass die Zeichenkette “Hallo hier bin ich” gesendet wird. Die zuvor de nierte
Zeichenkette message sieht jetzt wie folgt aus:
Hallo hier bin ich89
Die ersten 18 Zeichen von message wurden mit den empfangenen Zeichen überschrieben.
9.2. Beschreibung der ASURO-Funktionen
Um die Programmierung von ASURO möglichst einfach zu gestalten, gibt es einige vorgefertigte
Funktionen. Diese stellen nicht zwingend das Optimum dar, für einige Anwendungen ist es sicher
besser, eigene Funktionen zu schreiben.
Die Funktionen sind klassisch im Stil ihrer Deklaration dargestellt. Wer damit nichts anfangen
kann, schaut sich am besten jeweils die Beispiele an.
Um Missverständnissen vorzubeugen: Funktionen, die etwas steuern, wie die Antriebs-Funktionen
oder die Funktionen für die Anzeigenelemente legen Einstellungen fest, die solange gültig sind, bis
sie wieder geändert werden. Also eine grüne Status-Leuchtdiode bleibt solange grün, bis sie auf
eine andere Farbe gesetzt oder ausgeschaltet wird.