Die unten beschriebenen Steuermodi haben für BS2000-Rechner keine Bedeutung.
Die Komponente c_cflag
beschreibt die hardwaremäßige Steuerung des Terminals, dabei werden für zeichenorientierte Terminals folgende Elemente unterstützt:
Maskenname | Beschreibung |
| Zustand von Modem ignorieren |
| Empfänger zulassen |
| Anzahl der Bits je Byte: 5 Bits |
| 2 Stoppbits senden (sonst 1) |
| Bei letztem |
| Parität zulassen |
| ungerade Parität zulassen |
Zusätzlich werden die Ein- und Ausgabebaudraten in der Struktur termios
abgespeichert. Die folgenden Werte werden unterstützt:
Name | Beschreibung |
| Verbindung abbauen (Hang Up) |
| 50 Baud |
| 75 Baud |
| 110 Baud |
| 134.5 Baud |
| 150 Baud |
| 200 Baud |
| 300 Baud |
| 600 Baud |
| 1200 Baud |
| 1800 Baud |
| 2400 Baud |
| 4800 Baud |
| 9600 Baud |
| 19200 Baud |
| 38400 Baud |
Die folgenden Schnittstellen stehen für das Ermitteln und Setzen der Werte für Ein- und Ausgabebaudrate in der Struktur termios
zur Verfügung:cfgetispeed()
, cfgetospeed()
, cfsetispeed()
und cfsetospeed()
.
Mit den CSIZE
-Bits wird die Anzahl der Bits je Byte sowohl für die Übertragung als auch für den Empfang angegeben. Darin ist das Paritätsbit, sofern vorhanden, nicht enthalten. Bei gesetztem CSTOPB
werden zwei Stoppbits verwendet (sonst eins). Bei einer Übertragungsgeschwindigkeit von 110 Baud werden z.B. normalerweise zwei Stoppbits verwendet.
Bei gesetztem CREAD
wird der Empfänger aktiviert. Ist CREAD
nicht gesetzt, werden keine Zeichen empfangen.
Bei gesetztem PARENB
wird die Paritätserkennung und die Paritätserzeugung aktiviert, d.h. jedes Zeichen erhält ein Paritätsbit. In diesem Fall gibt das PARODD
-Bit an, dass eine ungerade Parität verwendet wird (sonst wird eine gerade Parität verwendet).
Bei gesetztem HUPCL
wird die Verbindung abgebaut, wenn der letzte Prozess, der diese Leitung benutzt, die Verbindung schließt oder sich beendet. Das heißt, das Data-Terminal-Ready-Signal (DTR
) wird zurückgesetzt. Dadurch wird die Verbindung abgebrochen.
Bei gesetztem CLOCAL
wird angenommen, dass es sich bei der bestehenden Leitung um eine lokale, direkte Verbindung ohne Modemsteuerung handelt. Die Verbindung hängt dann nicht von den Leitungssignalen ab. Ansonsten wird eine Modemsteuerung angenommen und die Melde-Signale werden überwacht.
Unter normalen Umständen wartet ein Aufruf der Funktion open()
auf das Ende des Verbindungsaufbaus. Wenn jedoch das Bit O_NONBLOCK
beim Aufruf von open()
angegeben wird oder das Bit CLOCAL
gesetzt ist, dann kehrt die Funktion open()
sofort zurück, ohne auf die Verbindung zu warten.
Wenn das Objekt, für das die Steuermodi gesetzt sind, keine asynchrone serielle Verbindung ist, können einige der Modi ignoriert werden; wird z.B. der Versuch unternommen, die Baudrate für eine Netzverbindung zu einem Terminal an einem anderen Rechner zu setzen, kann die Baudrate für die Verbindung zwischen Terminal und Rechner, mit dem sie direkt verbunden ist, gesetzt werden oder nicht.
Der Anfangswert für die Steuermodi (Wert von c_cflag
) nach einem Aufruf von open()
ist, dass kein Bit gesetzt ist.