| Operatoren |
set_serial_param — Setzen der Parameter eines seriellen Gerätes.
set_serial_param( : : SerialHandle, BaudRate, DataBits, FlowControl, Parity, StopBits, TotalTimeOut, InterCharTimeOut : )
Mit set_serial_param können die Parameter eines seriellen Gerätes gesetzt werden. Der Parameter BaudRate gibt die Ein- und Ausgabegeschwindigkeit des Gerätes an. Es ist zu beachten, dass nicht jedes Gerät alle Geschwindigkeiten unterstützt. Die Anzahl der übertragenen Datenbits wird mit DataBits festgelegt. Der Parameter FlowControl legt fest, ob und welche Art von Datenflusskontrolle verwendet werden. Software-Kontrolle ('xon_xoff') und Hardware-Kontrolle ('cts_rts', 'dtr_dsr' können gewählt werden. Mehrere Werte können hierfür innerhalb einer Zeichenkette gesetzt werden, durch Leerzeichen getrennt (z.B. 'cts_rts dtr_dsr'). Ob und welche Art von Paritätskontrolle der übertragenen Daten verwendet wird, lässt sich mit Parity festlegen. Die Anzahl der übertragenen Stop-Bits kann mit StopBits gesetzt werden. Schließlich können noch zwei Timeouts für das Lesen von dem seriellen Gerät gesetzt werden. Der Parameter TotalTimeOut bezieht sich auf die Zeit, die bei read_serial bis zum Eintreffen des ersten Zeichens, unabhängig von der Anzahl der insgesamt zu lesenden Zeichen, höchstens vergehen darf. Der Parameter InterCharTimeOut gibt die Zeit an, die zwischen dem Lesen einzelner Zeichen verstreichen darf, falls mehrer Zeichen mit read_serial gelesen werden sollen. Falls einer der beiden Timeouts auf -1 gesetzt wird, so wird beliebig lange auf das Eintreffen eines Zeichens gewartet. Werden beide Timeouts auf 0 gesetzt, wartet das System nicht, sondern liest die vorhandenen oder keine Zeichen. Auf Windows-Systemen ergibt sich so ein maximaler Timout von TotalTimeOut + n InterCharTimeOut, wenn n Zeichen gelesen werden sollen. Auf unixartigen Systemen kann systembedingt nur einer der beiden Timeouts gesetzt werden. Wenn beide Timeouts größer als -1 übergeben werden, wird nur der Total-Timeout beachtet. Die Einheit der beiden Timeouts ist Millisekunden. Es ist jedoch zu beachten, dass der Timeout unter unixartigen Systemen nur in Zehntelsekundenschritten spezifizieren lässt, d.h. der minimale wirksame Timeout ist 100. Für jeden dieser Parameter kann die aktuelle Einstellung beibehalten werden, indem 'unchanged' übergeben wird.
Dieser Operator modifiziert den Zustand des folgenden Eingabeparameters:
Der Wert dieses Parameters darf nicht über mehrere Threads verwendet werden.Handle der seriellen Schnittstelle.
Übertragungsgeschwindigkeit der seriellen Schnittstelle.
Defaultwert: 'unchanged'
Werteliste: 50, 75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 76800, 115200, 153600, 230400, 307200, 460800, 'unchanged'
Anzahl Datenbits der seriellen Schnittstelle.
Defaultwert: 'unchanged'
Werteliste: 5, 6, 7, 8, 'unchanged'
Datenflusskontrolle der seriellen Schnittstelle.
Defaultwert: 'unchanged'
Werteliste: 'cts_rts dtr_dsr xon_xoff', 'cts_rts dtr_dsr', 'cts_rts xon_xoff', 'cts_rts', 'dtr_dsr xon_xoff', 'dtr_dsr', 'none', 'unchanged', 'xon_xoff'
Parität der seriellen Schnittstelle.
Defaultwert: 'unchanged'
Werteliste: 'even', 'none', 'odd', 'unchanged'
Anzahl Stopbits der seriellen Schnittstelle.
Defaultwert: 'unchanged'
Werteliste: 1, 2, 'unchanged'
Gesamt-Timeout der seriellen Schnittstelle in ms.
Defaultwert: 'unchanged'
Wertevorschläge: -1, 0, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 'unchanged'
Inter-character Timeout der seriellen Schnittstelle in ms.
Defaultwert: 'unchanged'
Wertevorschläge: -1, 0, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 'unchanged'
Wenn die Parameter korrekt sind und die Parameter des Gerätes gesetzt werden konnten, liefert set_serial_param den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt.
Foundation
| Operatoren |