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.