Erhalte die Anzahl der Bytes, die vor dem Lesen auf einem seriellen Port warten, linux

8

Ich konvertiere eine Win32 serielle Klasse nach Linux (Ubuntu) Eine der erforderlichen Funktionen dieser seriellen Klasse besteht darin, auf den seriellen Puffer zu "gucken", um zu sehen, wie viele Bytes auf dem seriellen Port warten, bevor der serielle Port gelesen wird.

In dieser Pediküre-Situation muss ich nur wissen, ob irgendwelche Bytes auf dem Port sind, bevor ich versuche, es zu lesen.

In Fenstern habe ich COMSTATS verwendet, aber ich kann anscheinend keine ähnliche Funktion in Linux finden.

Meine Frage ist:

Unter Linux Wie liest man die Anzahl der BYTES / Zeichen, die auf einem seriellen Port warten, ohne sie aus dem Puffer des seriellen Ports zu entfernen?

    
Steven smethurst 05.05.2011, 15:21
quelle

2 Antworten

10

Sie müssen ein ioctl

verwenden %Vor%

Dieses Dokument ist sehr lesenswert, für dieses und viele andere Probleme (kanonischer vs Rohmodus, usw.)

Ссылка

    
Chris Stratton 05.05.2011, 15:33
quelle
2

In C-Sprache können Sie dies mit einem ioctl fragen:

%Vor%     
Cédric Julien 05.05.2011 15:27
quelle

Tags und Links