%20verwenden%3F.png)
Ich kommuniziere erfolgreich mit einer Karte, die über eine serielle Schnittstelle mit meinem PC verbunden ist. Ich kann Bytes senden und empfangen - aber für interaktive Anwendungen, die auf der Karte ausgeführt werden und versuchen, Eingaben von ihrem Standard-DIN zu lesen, scheint Minicom keine Art vonZeile lesen-ähnliche Bearbeitungsfunktion:
// code running on the embedded board
printf("Reading a number: ")
scanf("%d", &i);
Im Minicom:
$ minicom -D /dev/ttyS0 -b 38400
...
Reading a number: 1a^H
Sobald ich ein „a“ eingebe, kann ich es nicht mehr mit der Rücktaste überschreiben.
Beachten Sie, dass es hier keine Shell oder irgendetwas dazwischen gibt – dies ist einfaches Minicom über eine serielle Leitung, mehr nicht.
screen /dev/ttyS0 38400
scheint gut zu funktionieren – ich kann die Zeile bearbeiten und sie nur dann an die Serie senden, wenn ich die EINGABETASTE drücke.
Kann Minicom so konfiguriert werden, dass es dasselbe tut?
Antwort1
Erwägen Sie die Verwendung, rlwrap
um die erweiterten Zeilenbearbeitungsfunktionen von readline zu jedem einfachen Terminalprogramm hinzuzufügen. Ich bin nicht sicher, ob minicom
es damit gut funktionieren würde, da es eine ziemlich komplexe Benutzeroberfläche hat; wenn nicht, versuchen Sie es picocom
.
Antwort2
apt install socat rlwrap
rlwrap -- socat - /dev/ttyUSB1,crnl
Anschließend können Sie CR zum Suchen, die Pfeiltasten für die Befehle „Weiter“ und „Zurück“, Alt-B, Alt-F, CA, Ce, die Pfeiltasten zur Navigation innerhalb einer Zeile usw. verwenden.