direkter Zugriff auf serielle Schnittstelle
-
Hallo zusammen,
mit read() kann ich z.B. vom Buffer der seriellen Schnittstelle (z.B. ttyS0) lesen. Gibt es in Linux (und mit ANSI C) die Möglichkeit, direkt auf die Schnittstelle (also ohne Buffer) zuzugreifen?
Gruß und herzlichen Dank!
-
Mittels fcntl() und ioctl() kannst Du verschiedene Einstellungen vornehmen und Spezialfunktionen ausfuehren.
-
-
Mit read() und write() erfolgt grundsätzlich ein ungepufferter Zugriff auf die Devices! Du musst allerdings die "Vorverarbeitung" der Daten über tcsetattr() abschalten.
Die UARTS (I/O-Baustein am COM-Port) besitzen jedoch intern (Hardware) einen FIFO von max. 16 Bytes Tiefe - der hängt bei der Datenübertragung natürlich immer dazwischen.
Martin