[Inhalt] [Zurück] [Weiter] [Thema] [Index]

SerBinRead()


Syntax:

SerBinRead (Real port, Real timeout, Real nbytes [, Bool skipnull]) : S
port: Portnummer der seriellen Schnittstelle, 1-100.
timeout: Timeout in s.
nbytes: maximale Anzahl zu lesender Zeichen, oder 0.
optional: skipnull: Char(0) überlesen

Beispiel:

zeile := SerBinRead (2, 5, 0)

Beschreibung:

Liest binäre Daten aus der Schnittstelle port aus.

Falls nbytes > 0 ist, wird versucht, nbytes zu lesen. Wenn dabei auf das nächste Zeichen mehr als timeout Sekunden gewartet wird, bricht das Lesen ab.

Falls nbytes = 0 ist, werden alle innerhalb der festen Zeit timeout eintreffenden Zeichen gelesen.

Falls die Schnittstelle im Blocking-Modus geöffnet ist (Synchronbetrieb), hat das timeout keine Bedeutung, da immer nbytes eingelesen werden müssen, unabhängig davon, wie lange das dauert. Im Blocking-Modus muss nbytes > 0 sein.

Mit skipnull kann man festlegen, ob Nullen überlesen werden sollen. Dies kann sinnvoll sein, wenn eigentlich kein Nullen auftauchen würden, die Leitung aber so schlecht ist, dass versehentlich Nullen eingestreut werden. Die Voreinstellung ist, dass Nullen gelesen werden.

Falls keine Daten anliegen, wird ein Leerstring zurückgegeben.

Die Schnittstelle muss mit SerOpen() geöfnet worden sein.

Siehe auch SerRead() und SerGet().



toposoft 28.10.2024