[Linux] Terminal-Programm mit Dateilesefunktion gesucht

OP
Georg schrieb:
> Ist das nicht das Gleiche wie eine Textdatei zu senden?

Nein, das ist nicht das Gleiche. Die Kommandozeile wird zu Beginn 
abgearebitet und eine mit -f übergebene Datei wird sofort übermittelt.

Was ich suche, ist ein Terminal, dem ich mitten in der Sitzung sagen 
kann: "lies jetzt die Datei xy.z und blas deren Inhalt über die 
Leitung".

gtkterm kann das nicht.
OP
Danke für die Tipps.

minicom funktioniert leider unter Linux Mint nicht, weil es darauf 
besteht, ganu bestimmte tty-Devices serviert zu bekommen. /dev/ttyUSB0 
zählt leider nicht dazu.

Dafür funktioniert es mit CuteCom prima.

Gerd E. schrieb:
> Dateiinhalt in die Zwischenablage übernehmen (z.B. in nem Editor) und
> dann einfach in das Terminalprogramm einfügen.

Der Trick ist natürlich noch besser...
Gast
> minicom funktioniert leider unter Linux Mint nicht, weil es darauf
> besteht, ganu bestimmte tty-Devices serviert zu bekommen. /dev/ttyUSB0
> zählt leider nicht dazu.

Ohne gerade am Linuxrechner zu sitzen behaupte ich, dass das gehen 
müsste.
Mit der Option -D (oder -d ?) sollte man das Device angeben können, 
welches von minicom genutzt werden soll. Alternativ dazu lässt sich auch 
eine eigenen Konfigurationsdatei für das jeweilige Device anlegen, in 
dem auch Dinge wie Baudrate, Handshake etc. eingestellt werden können.
Gast
hi,

hast du eigentlich dieß Anforderung, das es automatisch passieren soll?

Wenn nicht, kannst du ja einfach deine Datei mit cat auf den Port 
schreiben. Dazu must du nicht mal dein Terminal zu machen.

wenn du das allerdings automatisieren willst, würde ich erst gar kein 
Terminal Programm nutzen, sondern direckt mit cat, echo und co arbeiten.


Grüße
OP
nicht"Gast" schrieb:
> hast du eigentlich dieß Anforderung, das es automatisch passieren soll?

Nein - das könnte man ja auch mit gtkterm -f machen...

Ich habe auf einem Arduino Nano einen kleinen I/O-Monitor laufen, mit 
dem man die Peripherie [im Moment nur die Ports, die Timer und den ADC] 
manipulieren und einlesen kann. Mit dem Teil teste ich eine kleine 
Schaltung auf dem Steckbrett.

Das Problem beim Nano ist der Boot-Lader, der wird beim Reset immer 
automatisch gestartet und das dauert etwas. Wenn man das Terminal 
startet, gibts auch einen Reset und der Bootlader lauscht auf der 
Leitung. Wenn das Terminal dann sofort los kotzt, dann geht zumindest 
ein Teil des Textes verloren - deswegen geht das mit gtkterm -f nicht.

Mit der Zwischenablage kann man es aber zu Fuß machen und miniterm ist 
richtig komfortabel mit seiner Dateilesefunktion...
nicht"Gast" schrieb:
> Wenn nicht, kannst du ja einfach deine Datei mit cat auf den Port
> schreiben. Dazu must du nicht mal dein Terminal zu machen.

Bei Deinem 2. Satz habe ich starke Zweifel: Es werden keine 2 Programme 
gleichzeitig das Device der seriellen Schnittstelle öffnen können. Wenn 
das Terminalprogramm läuft und die Verbindung zur Schnittstelle offen 
hat, kann das cat da nicht gleichzeitig auch noch was hinschicken. Würde 
ja sonst auch in nem ziemlichen Kuddelmuddel enden.
Gast
Gerd E. schrieb:
> Bei Deinem 2. Satz habe ich starke Zweifel: Es werden keine 2 Programme
> gleichzeitig das Device der seriellen Schnittstelle öffnen können. Wenn
> das Terminalprogramm läuft und die Verbindung zur Schnittstelle offen
> hat, kann das cat da nicht gleichzeitig auch noch was hinschicken. Würde
> ja sonst auch in nem ziemlichen Kuddelmuddel enden.

Huch, dann mach ich das ja die ganze Zeit falsch :)
Bernd K. schrieb:
> Uhu U. schrieb:
>> nicht"Gast" schrieb:
>>> Huch, dann mach ich das ja die ganze Zeit falsch :)
>>
>> Unter Linux geht das definitiv nicht.
>
> Doch das geht.

Ja das geht definitiv, nur kommt dabei nicht unbedingt das raus was man 
denkt. So lange nicht beide Programme gleichzeitig senden funktioniert 
das senden problemlos. Das Problem ist eher das empfangen, bei mir ist 
das zumindest so, dass nur eines der beiden Programme die Daten empfängt 
und das andere nicht. Welches Programm die Daten empfängt hängt davon ab 
wer zuerst pollt...
Gast
Thomas Z. schrieb:
> Das Problem ist eher das empfangen, bei mir ist
> das zumindest so, dass nur eines der beiden Programme die Daten empfängt
> und das andere nicht. Welches Programm die Daten empfängt hängt davon ab
> wer zuerst pollt...
Einfach über udev zwei device-dateien anlegen lassen (z.B. 
/dev/myDevice_1.1 und /dev/myDevice_1.2). Device 1.1 an Programm 1 und 
Device 1.2 an Programm 2 übergeben und dann sollte sich dein Leseproblem 
erledigt haben.

Für schreiben hab ich das noch nie ausprobiert.
Uhu U. schrieb:
> Wenn man das Terminal
> startet, gibts auch einen Reset und der Bootlader lauscht auf der
> Leitung.

Den Reset kann man leicht verhindern, z.B. so:
http://playground.arduino.cc/Main/DisablingAutoResetOnSerialConnection

oder einen Kondensator von RST nach GND (bei mir reichen 100n). Da die 
benötigten Leitungen alle auch auf dem Programmier-Stecker liegen, kann 
man sich dafür einen Adapter bauen, den man bei Bedarf (wenn man den 
Bootloader wirklich benötigt), einfach so lange abzieht.
Uhu U. schrieb:
> fragt sich nur, welchen Sinn das hat

Bei mir läuft der µC wochenlang durch.
Gelegentlich möchte ich per PC Daten auslesen oder Parameter ändern, 
ohne dass ein Reset ausgelöst wird (und die Daten dann futsch sind), 
wenn ich den PC neu boote oder das Terminal-Programm neu verbinde.
Während der Entwicklung kann ich bei Bedarf (automatischer Start des 
Bootloaders) auf dem Steckbrett einfach den Kondensator rausziehen.
Unter Windows kann man die serielle Schnittstelle so öffnen daß die 
DTR-Leitung nicht zappelt und somit kein Reset ausgelöst wird (bin ich 
versehentlich drübergestolpert beim Implementieren meiner eigenen 
Serial-Komponente für FPC/Lazarus, ich hab mich gewundert warum der 
Arduino plötzlich nicht mehr resettet wenn ich den Port öffne).

Unter Linux (zumindest mit dem CDC Treiber für den UNO (kein FTDI) ist 
mir dieses nützliche Feature leider bislang noch nicht gelungen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.