[Linux] Terminal-Programm mit Dateilesefunktion gesucht

#4626042
Lesenswert?

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.
#4626097
Lesenswert?

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 #4626103
Lesenswert?

> 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 #4626124
Lesenswert?

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
#4626134
Lesenswert?

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...
#4626138
Lesenswert?

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 #4626142
Lesenswert?

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 :)
#4626325
Lesenswert?

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 #4626546
Lesenswert?

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.
#4630298
Lesenswert?

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.
#4631928
Lesenswert?

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.
#4632516
Lesenswert?

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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren