GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie kann ich die Paritätsbits einstellen, wenn ich den Bildschirm verwende, um auf eine serielle Schnittstelle zuzugreifen

Versuchen Sie es mit sudo screen /dev/ttyUSB2 115200,cs8,parenb,-parodd,-cstopb

Aus der Manpage für stty :

  • csN - Zeichengröße auf N Bits setzen, N in [5..8]
  • [-]parenb - erzeugt ein Paritätsbit in der Ausgabe und erwartet ein Paritätsbit in der Eingabe
  • [-]parodd - setzt ungerade Parität (gerade mit '-')
  • [-]cstopb - verwendet zwei Stoppbits pro Zeichen (eines mit '-')

Lange Rede kurzer Sinn, es sieht so aus, als ob screen unterstützt das Setzen dieser Flags nicht. Die Alternative wäre, stty auszuführen um die Flags zu setzen, während der Bildschirm mit dem Port verbunden ist, wie Sie es getan haben. Alternativ könnten Sie Kermit oder ein anderes Terminal-Emulator-Programm in einer herkömmlichen Bildschirm-Befehlszeilensitzung ausführen, anstatt Bildschirm direkt mit dem seriellen Anschluss zu verbinden.

Die screen Der Quellcode befindet sich unter http://git.savannah.gnu.org/cgit/screen.git. Es sieht so aus, als ob die interessierende Datei tty.sh ist. Dies ist ein Shell-Skript, das während des Build-Prozesses ausgeführt wird, um "tty.c" zu erzeugen. tty.c enthält den Code für den Zugriff auf serielle Ports.

Die Funktion SttyMode() scheint das zu sein, was die tty-Optionen analysiert und den tty-Modus einstellt. Es scheint mir, dass es einen kleinen, festen Satz von Optionen handhabt. "parenb" und "parodd" gehören nicht dazu.

Es sieht so aus, als wäre es für einen C-erfahrenen Entwickler einfach, Unterstützung für diese Optionen hinzuzufügen, wenn das eine Option für Sie ist.


Linux
  1. So richten Sie SSH-Tunneling ein

  2. Wie richte ich mit Hilfe von Setcap eine Remote-Port-Weiterleitung auf Port 80 zum Localhost ein?

  3. Linux – So finden Sie Prozesse über die serielle Schnittstelle?

  4. Wie kann ich Daten an einer seriellen Schnittstelle in Linux überwachen?

  5. Wie kann ich das 'Backend' in Matplotlib in Python einstellen?

So richten Sie den Pretty Hostnamen ein

Warum wacht der Bildschirmschoner bei der Verwendung von Vlc immer wieder auf?

Wie kann ich unter Linux den Inhalt einer Datei als Parameter an eine ausführbare Datei übergeben?

Wie kann ich die Prozessoraffinität eines Prozesses unter Linux einstellen?

Woher kennt cat die Baudrate der seriellen Schnittstelle?

Wie bestimme ich die Baudrate einer seriellen Schnittstelle?